当前位置: 首页 > news >正文

十大购物网站医疗创意小产品设计

十大购物网站,医疗创意小产品设计,wordpress新浪微博,凡科网怎么制作小程序典型电路设计之FIFO设计 FIFO (First In First Out#xff09;是一种先进先出的数据缓存器#xff0c;通常用于接口电路的数据缓存。与普通存储器的区别是没有外部读写地址线#xff0c;可以使用两个时钟分别进行写和读操作。FIFO只能顺序写入数据和顺序读出数据#xff0…典型电路设计之FIFO设计 FIFO (First In First Out是一种先进先出的数据缓存器通常用于接口电路的数据缓存。与普通存储器的区别是没有外部读写地址线可以使用两个时钟分别进行写和读操作。FIFO只能顺序写入数据和顺序读出数据其数据地址由内部读写指针自动加1完成不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址。 FIFO由存储器块和对数据进出FIFO的通道进行管理的控制器构成每次只对一个寄存器提供存取操作而不是对整个寄存器阵列进行。FIFO有两个地址指针一个用于将数据写入下一个可用的存储单元一个用于读取下一个未读存储单元的操作。读写数据必须一次进行。 当一个堆栈为空时(图A读数据指针和写数据指针都指向第一个存储单元如所示;当写入一个数据时图B)写数据指针将指向下个存储单元;经过七次写数据操作后(图C)写指针将指向最后一个数据单元;当经过连续八次写操作之后写指针将回到首单元并且显示堆栈状态为满图D)。数据的读操作和写操作相似当读出一个数据时读数据指针将移向下一个存储单元直到读出全部的数据此时读指针回到首单元堆栈状态显示为空。 一个FIFO的组成一般包括两个部分:地址控制部分和存储数据的RAM部分。如下图所示。地址控制部分可以根据读写指令生成RAM地址。RAM用于存储堆栈数据并根据控制部分生成的地址信号进行数据的存储和读取操作。这里的RAM采用的是前面提到的双口RAM。 例用Verilog HDL 设计深度为8位宽为8的FIFO 下面是verilog代码 module FIFO_buffer(clk,rst,write_to_stack,read_from_stack,Data_in,Data_out); input clk,rst; input write_to_stack,read _from_stack; input [7:0] Data_in; output [7:0] Data_out; wire [7:0]Data_out; wire stack_full,stack_empty; wire [2:0] addr_in, addr_out; .write_to_stack(write_to_stack),.write_ptr(addr_in), .write_to_stack(write_to_stack),.write_ptr(addr_in),.read_ptr(addr_out),.read_from_stack(read_from_stack),.clk(clk),.rst(rst)); ram_dual U2(.q(Data_out),.addr_in(addr_in),.addr_out(addr_out),.d(Data_in),.we(write_to_stack),.rd(read_from_stack),.clk1(clk),.clk2(Clk)); endmodule module FIFO_control( write_ptr,read_ptr,stack_full, stack_empty,write_to_stack, read_from_stack, clk, rst); parameter stack_width8; parameter stack_height8; parameter stack_ptr_width3; output stack_full; output stack_empty; output [stack_ptr_width-1:0] read_ptr; output [stack_ptr_width-1:0] write_ptr; input write_to_stack; input read_from_stack; input clk; inputrst; reg[stack_ptr_width-1:0] read ptr; reg[stack_ptr_width-1:0] write _ptr; reg[stack _ptr_width:0] ptr_gap; reg [stack_width-1:0] Data_out; reg[stack_width-1:0]stack[stack_height-1:0]; always(posedge clk or posedge rst)begin if(rst)begin Data_out0; read_ptr0; write_ptr0; ptr_gap0; end else if(write_to_stack (!stack_full) (!read_from_stack))begin write_ptrwrite_ptr1; ptr_gapptr_gap1; end else if(!write_to_stack (!stack_empty) (read_from_stack))begin read_ptrread_ptr1; ptr_gapptr_gap-1; end else if(write_to _stack stack_empty . read _from_stack)begin write_ptrwrite_ptr1; ptr_gapptr_gap1; end else if(write _to_stack stack_full read_from_stack)begin read _ptrread_ptr1; ptr_gapptr_gap-1; end else if(write_to_stack read_from_stack(!stack_full)(!stack_empty))begin read_ptrread_ptr1; write_ptrwrite_ptr1; end end endmodule下面是testbench module FIFO_tb; reg clk, rst; reg [7:0]Data_in; reg write_to_stack, read_from_stack; wire[7:0] Data_out; FIFO_buffer U1(.clk(clk),.rst(rst),.write_to_stack(write_to_stack), .read_from_stack(read_from_stack),.Data_in(Data_in), .Data_out(Data_out)); initial begin clk0; rst1; Data_in0; write_to_stack1; read_from_stack0; #5 rst0; #155 write_to_stack0; read_from_stack1; end always #10 clk~clk; initial begin repeat(7) #20 Data_inData_in1; end endmodule
http://www.hkea.cn/news/14522235/

相关文章:

  • 商务网站建设与维护流程得到做网站公司
  • 域名指向国外服务器做网站网站设计 三把火科技
  • 网站模版亮点网站建设引流刘贺稳1
  • 泰安企业建站公司排行巴马网站建设
  • 自助建站帮助网网站树状栏目有点
  • 商城手机网站建设如何搭建高访问量的网站
  • 网站app推广怎么做中国建设厅网站
  • 淘客网站如何建设自己数据库ui培训机构排行榜
  • 河间网站建设网站开发做什么简单
  • 云虚拟主机建设网站一定要域名贵阳网站开发推荐
  • 网站 建设 领导小组好的网站 具备
  • 重庆住建厅网站官网沈阳信息港
  • 公司网站做一年多少钱wordpress 数据库空间
  • 品牌购买平台优化技术服务
  • 贵阳拍卖网站开发公司dedecms 调用网站内部搜索
  • vue做网站免费网页源码
  • 青海西宁网站开发公司苏州工业园区教育局官网
  • 流浪猫狗救助网站开发设计公司名称变更
  • 网站域名改了帝国cms教育app定制开发
  • 做服装网站设计书莱芜百姓网
  • 重庆建站服务商网站开发教学大纲
  • 深圳建设网站软件界面设计与色彩搭配
  • 太原有网站工程公司吗wordpress主题汉化包放哪里
  • 检测asp网站死循环wordpress lovevideo
  • 成品网站源码在线常德网站建设专业品牌
  • 广州电商网站建设做优秀网站
  • 怎么做狼视听网站更改wordpress主题语言包
  • 免费的域名注册网站金华住房和城乡建设厅网站
  • 网站不备案能访问吗骨干校 建设网站
  • 网站建设实习心得网站没有备案做竞价吗