11/0 0?/0
1?/0
第一章 先进先出数据缓冲器设计
1.1 FIFO工作原理
先进先出 数据管理
ph-----头指针(指向第一个数据) pe------尾指针(指向第一个空单元)
判缓冲器空条件: 当pe=ph--------空 判缓冲器满条件: 当pe+1=ph-----满
clk nreset fifo_in fifo_rd fifo_wr
12.试以调用库函数的方法设计一个容量为8K×24bit的 RAM。其双向数据线为D [0:23],地址线为A[0:12],写 信号为new (低电平有效),读信号为nrd(低电平有效)。 13.设计一个位宽为8位、深度为8层的堆栈。 14.试按下图设计VerilogHDL模型。
1?/0 10/1 s4 01/1 1?/0 00/0 s3 10/1 01/0 s0 00/1 s1 00/0 00/0 s2 ?1/0 01/1
数字系统实例:
FIFO 异步串行通信接口 调制解调器 I2C接口的EEPROM读写器 CISC CPU RISC CPU
复习
例1:一个挂在总线上的8位寄存器。 module register0(db,nce,nwe) ; inout[7:0] db ; input nce,nwe; reg[7:0] q; assign db= (nce ||(!nwe))?8'bzzzzzzzz :q; always @(posedge nwe) begin if(nce==0) q<=db; end endmodule
//FIFO //Size:255Bytes module fifo(clk,nreset,pe,ph,fifo_in,fifo_out,fifo_wr,fifo_rd, busy,empty,full,state,wr,rd); input clk,nreset,fifo_wr,fifo_rd;// input[7:0] fifo_in; output[1:0] state; output empty,full,wr,rd,busy;// output[7:0] fifo_out,pe,ph; reg[1:0] state; reg[7:0] fifo_out; reg wr,rd,empty,full;//fifo write , read ,empty , full reg[7:0]pe,ph; //fifo point:P_end,P_head parameter write=1,read=2,stop=0;