亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? part3.txt

?? Thomas課本中的verilog例子。Thomas的verilog在可編程期間領域很有名
?? TXT
?? 第 1 頁 / 共 3 頁
字號:
/*
Copyright -c- 1996, Kluwer Academic Publishers. All Rights Reserved.

This electronic text file is distributed by Kluwer Academic Publishers with
*ABSOLUTELY NO SUPPORT* and *NO WARRANTY* from Kluwer
Academic Publishers.

Use or reproduction of the information provided in this electronic text file for
commercial gain is strictly prohibited. Explicit permission is given for the
reproduction and use of this information in an instructional setting provided
proper reference is given to the original source. Kluwer Academic Publishers
shall not be liable for damage in connection with, or arising out of, the furnishing,
performance or use of this information.


>From the Authors:
This file contains support files for the floppy disk exercise in Chapter 9 of "The Verilog Hardware Description Language, Third Edition" by D. E. Thomas and 
P. R. Moorby. Note that corrections may have been made to the examples in this
file and thus they may differ from the examples in the book. Later printings of the
book will include these corrections.  This file contains the good and bad data files.  You'll
need to save them to different files.
-always
DT, PM
*/
//  simulation interface module
//  by Tom Martin, February, 1995 
//  for 18-360 project 1.
//  
//  This module should be listed first on the command line, so that
//  the timescale directive will apply to all other modules, i.e.,
//  verilog simint.v blah1.v blah2.v blah3.v
//  
//  I think the simulator will die if the timescale directive is not
//  in the first module, but is in later ones.

`timescale      10 ns/1 ns
  
module simint(go, count, done, err);
output go;
output [3:0] count;
reg go;
reg [3:0] count;
input done, err; 

initial begin
go = 0;
count = 0;
end

endmodule
Last modified:3/6/95, by Tom Martin

The files in this directory are for the 18-360 Intro. to CAD project 1.

Name Description
-------------------------------------------------------------------------
memory.v Verilog module for the 512 bytes of memory and the
memory bus controller.    Note that a useful feature
of memory.v is that the entire contents of the memory
can be displayed on the postive edge of 'debug'.  

correct0.v Verilog module for 10 sectors of a disk.  Uses the file
good.dat as input.  All 10 sectors of the disk are error
free.  

error0.v Verilog module for 10 sectors of a disk.  Uses the file
bad.dat as input.  Sectors 0, 1, 2 have errors in them;
sectors 3-9 are correct

simint.v Simulation interface module.  Used to start the simulation
and see when it is done.  This probably isn't
necessary--just have the top level of the design
connect to the go, sector count, done, and error
signals of Wait.  Contains the timescale directive
which sets the time units for the whole simulation.
simint.v should be the first module listed on the
command line in order to avoid compilation errors,
i.e.  verilog simint.v blah1.v blah2.v


Comments
----------------------------------------------------------------------------

3/3/95 Removed the timescale directives from memory.v,
correct0.v, and error0.v.  Simint.v now sets the 
time scale for the whole simulation (10ns/1ns).  
Modified the clock definition in correct0.v and error0.v
to account for the change in the time scale.

3/6/95 Simint.v modified so that count is a 4 bit number
instead of a 3 bit number.  Thanks to Edith and the Chinman
for pointing out that you can't count to 10 with 3
bits...

3/7/95  Memory.v modified so that the address bits could address
477 bytes of memory.  Variable a was changed from 8 bits
to 9 bits.

3/10/95 Replaced the protected versions of correct0.v, error0.v,
and memory.v with their unprotected source, so that the
Cadence debugger can be used with the files.
//  disk module with correct data
//  by Tom Martin, February 1995
//  for 18-360.

`define P 400 // period is 4 us...

module disk(idx, rddata);
output idx, rddata;


reg [7:0] disk[0:5119];  // the 10 sectors of the disk
reg idx, rddata;

integer sector, byte, bit;
reg [7:0] tmp;

initial begin
idx = 0;
rddata = 0;
$readmemh("good.dat", disk);  
end 

//  set up the clock in rddata
`protect
always begin
#(`P/8) rddata = 1;   // these will have to change later
#(`P/8) rddata = 0;   // to have some randomness
#(`P*0.75);
end
`endprotect

// set up idx
`protect
always begin
#(`P/8) idx = 1;
#(`P*8) idx = 0;
#(4087.875*`P) ;
end
`endprotect

// and put the data in rddata.
`protect
always begin
for (sector=0; sector < 10; sector = sector + 1 ) 
begin
for (byte=0; byte < 512; byte = byte + 1) 
begin
tmp = disk[sector*512 + byte];
for (bit = 0; bit < 8; bit = bit + 1)
begin
@(posedge rddata);
if ( tmp[bit] ) 
begin
#(`P/2);
rddata = 1;
#(`P/8);
rddata = 0; 
end
end
end
end
end
`endprotect
endmodule
//  disk module with correct data
//  by Tom Martin, February 1995
//  for 18-360.

//  this particular module has a clock with ramping jitter

`define P 400 // period is 4 us...

module disk(idx, rddata);
output idx, rddata;


reg [7:0] disk[0:5119];  // the 10 sectors of the disk
reg idx, rddata;

integer sector, byte, bit, z;
integer ramp, flag;

//  for testing random rddata clock
//  integer ave, count, max;

reg [7:0] tmp;
file://reg [3:0] ran;
file://reg [3:0] ran2;

initial begin
idx = 0;
rddata = 0;

// ave = 0 ;
// max = 0;
// count = 0;
ramp = 0;
flag = 1;
// z = 1;

$readmemh("good.dat", disk);  
// ran =  $random(z);

end 

//  set up the clock in rddata
`protect
always begin
#(`P/8) rddata = 1;   // these will have to change later
#(`P/8) rddata = 0;   // to have some randomness
#(`P*0.7 + ramp); // delay between 280 and 
     // 320 counts--2.8 and 3.2us
if (ramp == 40) 
flag = -1;
if (ramp == 0) 
flag = 1;
if (flag == 1)
ramp = ramp + 1;
else 
ramp = ramp - 1;
// ave = `P*0.7 +  ramp;
// $monitor($time,, ave);
end
`endprotect

// set up idx
`protect
always begin
#(`P/8) idx = 1;
#(`P*8) idx = 0;
#(4087.875*`P) ;  // pulses per sector = 4096
end
`endprotect

// and put the data in rddata.
`protect
always begin
for (sector=0; sector < 10; sector = sector + 1 ) 
begin
for (byte=0; byte < 512; byte = byte + 1) 
begin
tmp = disk[sector*512 + byte];
for (bit = 0; bit < 8; bit = bit + 1)
begin
@(posedge rddata);
if ( tmp[bit] ) 
begin
#(0.5*(`P*0.7 + ramp+ `P/8));
// need to change this delay later to account for randomness
rddata = 1;
#(`P/8);
rddata = 0; 
end
end
end
end
end
`endprotect
endmodule
//  disk module with correct data
//  by Tom Martin, February 1995
//  for 18-360.

`define P 400 // period is 4 us...

module disk(idx, rddata);
output idx, rddata;


reg [7:0] disk[0:5119];  // the 10 sectors of the disk
reg idx, rddata;

integer sector, byte, bit;
reg [7:0] tmp;

initial begin
idx = 0;
rddata = 0;
$readmemh("bad.dat", disk);  
end 

//  set up the clock in rddata
`protect
always begin
#(`P/8) rddata = 1;   // these will have to change later
#(`P/8) rddata = 0;   // to have some randomness
#(`P*0.75);
end
`endprotect

// set up idx
`protect
always begin
#(`P/8) idx = 1;
#(`P*8) idx = 0;
#(4087.875*`P) ;
end
`endprotect

// and put the data in rddata.
`protect
always begin
for (sector=0; sector < 10; sector = sector + 1 ) 
begin
for (byte=0; byte < 512; byte = byte + 1) 
begin
tmp = disk[sector*512 + byte];
for (bit = 0; bit < 8; bit = bit + 1)
begin
@(posedge rddata);
if ( tmp[bit] ) 
begin
#(`P/2);
rddata = 1;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合久久天天| 欧美精品丝袜久久久中文字幕| 99国产精品久久久久久久久久| 欧美私人免费视频| 国产日韩欧美精品一区| 亚洲国产一区二区在线播放| 国产成人在线视频免费播放| 欧美精品国产精品| 日韩毛片在线免费观看| 久久国产欧美日韩精品| 欧美性色黄大片| 中文字幕日本不卡| 国产一区二区三区香蕉| 91精品国产91久久久久久最新毛片| 中文字幕亚洲在| 国产v综合v亚洲欧| 久久久午夜电影| 久久99久久99| 日韩精品一区在线| 另类欧美日韩国产在线| 6080午夜不卡| 日韩高清国产一区在线| 欧美老肥妇做.爰bbww| 亚洲国产精品久久不卡毛片| 99精品久久久久久| 国产精品网站在线| 丁香五精品蜜臀久久久久99网站 | 国产精品蜜臀av| 国产一区二区视频在线播放| 久久色在线视频| 国产乱码精品一区二区三区忘忧草| 日韩欧美色综合| 美女在线观看视频一区二区| 制服.丝袜.亚洲.中文.综合| 日韩精品三区四区| 日韩一级大片在线| 久草这里只有精品视频| 精品国产91久久久久久久妲己| 日韩成人伦理电影在线观看| 日韩一级片网址| 老司机午夜精品99久久| 久久亚洲精精品中文字幕早川悠里| 久久精品国产一区二区三区免费看| 欧美电影一区二区三区| 麻豆精品精品国产自在97香蕉| 日韩午夜三级在线| 国内精品嫩模私拍在线| 国产精品日日摸夜夜摸av| 风间由美性色一区二区三区| 亚洲天堂2016| 3d成人h动漫网站入口| 精品一区二区久久久| 久久精品网站免费观看| 91美女片黄在线观看| 亚洲一区二区三区在线播放| 欧美一区二区三区在| 国产精品中文字幕日韩精品| 国产精品天天摸av网| 91麻豆国产自产在线观看| 亚洲黄色小说网站| 欧美一区二区三区的| 国产乱子轮精品视频| 有码一区二区三区| 欧美一区二区视频在线观看2020| 国产一区二区精品在线观看| 亚洲人成网站在线| 日韩一区二区在线看片| 成人免费毛片片v| 亚洲综合999| 久久久国产精品不卡| 在线观看日韩一区| 国产一区二区免费看| 亚洲一二三级电影| 久久亚洲精品国产精品紫薇| 色偷偷久久人人79超碰人人澡| 免费成人在线观看| 1区2区3区欧美| 日韩精品在线一区二区| 色综合欧美在线| 国产精品1区二区.| 天堂av在线一区| 亚洲欧美在线另类| 欧美电影免费提供在线观看| 91麻豆精品在线观看| 国产夫妻精品视频| 日韩福利视频导航| 一区二区三区四区蜜桃| 国产亚洲精品中文字幕| 这里只有精品免费| 欧美在线|欧美| www.色精品| 韩国av一区二区三区| 午夜精品福利一区二区三区av| 国产精品无人区| 久久欧美中文字幕| 欧美一级xxx| 欧美日本视频在线| 欧美性视频一区二区三区| av成人免费在线观看| 国产一区二区在线观看免费| 日本成人中文字幕在线视频| 夜夜操天天操亚洲| **性色生活片久久毛片| 国产欧美一区二区在线| 精品少妇一区二区三区免费观看| 国产精一区二区三区| 国内外成人在线视频| 日本久久一区二区| 91福利在线播放| 亚洲精品大片www| 洋洋av久久久久久久一区| 亚洲女人****多毛耸耸8| 亚洲精品亚洲人成人网在线播放| 国产精品女主播av| 亚洲欧美偷拍卡通变态| 丝袜美腿一区二区三区| 国产成人精品网址| 99视频在线精品| 粉嫩在线一区二区三区视频| 三级久久三级久久久| 免费av成人在线| 成人sese在线| 欧美欧美午夜aⅴ在线观看| 久久网这里都是精品| 亚洲国产成人av网| 国产传媒欧美日韩成人| 欧美三级午夜理伦三级中视频| 日韩精品一区二区三区视频| 亚洲精品乱码久久久久久久久 | 精品久久久久久久久久久院品网| 国产午夜精品福利| 日韩影院精彩在线| 色狠狠色噜噜噜综合网| 欧美精品一区在线观看| 婷婷国产在线综合| www.亚洲在线| 久久久亚洲午夜电影| 午夜精品久久久久久久久| 成人动漫在线一区| 亚洲精品在线观看网站| 亚洲一二三四区不卡| 成人午夜电影久久影院| 精品国产一区二区三区av性色| 一区二区激情小说| 成人高清视频在线观看| 精品国产1区二区| 日韩av中文字幕一区二区| 91啦中文在线观看| 中文字幕欧美日本乱码一线二线| 日韩电影网1区2区| 欧美日韩成人一区二区| 亚洲一区二区三区四区五区黄| 成人午夜碰碰视频| 精品国产乱码久久久久久浪潮| 亚洲高清免费观看高清完整版在线观看 | 成人免费视频视频| 久久亚洲一区二区三区明星换脸| 日韩二区在线观看| 欧美日韩精品电影| 亚洲二区在线观看| 91成人免费在线| 亚洲同性gay激情无套| 99久久久久免费精品国产| 国产精品久久久久久久久搜平片 | 国产成人免费9x9x人网站视频| 欧美肥大bbwbbw高潮| 午夜影院久久久| 欧美在线一二三四区| 亚洲一区二区欧美日韩| 欧美系列日韩一区| 亚洲成人免费视| 欧美日本国产一区| 青青青爽久久午夜综合久久午夜| 欧美区一区二区三区| 免费日本视频一区| 精品久久人人做人人爽| 国产精品一区二区在线播放| 久久久久97国产精华液好用吗| 精品一区在线看| 国产亚洲人成网站| 91在线免费播放| 一区二区三区在线视频观看| 欧美探花视频资源| 麻豆成人免费电影| 欧美精品一区二区三区四区| 国产资源在线一区| 国产精品网站在线| 91国偷自产一区二区使用方法| 亚洲国产综合色| 日韩视频一区在线观看| 麻豆91精品视频| 国产欧美综合色| 色综合视频在线观看| 首页综合国产亚洲丝袜| 精品裸体舞一区二区三区| 福利电影一区二区三区| 亚洲久本草在线中文字幕| 欧美日韩精品一区二区三区蜜桃| 久久99精品久久久久久动态图| 国产女人18水真多18精品一级做|