原创 同步FIFO之VHDL描述3

2007-2-2 23:15 3392 10 11 分类: FPGA/CPLD

       同步FIFOVHDL描述3


       今天又重新安装了UltraEdit, Quartus II6.0Modelsim SE 6.0,这次安装以后系统没有发现什么异常。另外还安装了紫光的拼音输入法,用习惯了这个,微软呀,智能ABC这些都用不太习惯。最后把系统备份了一下,以免将来出了什么问题还可以还原一下,呵呵。


<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 


           还是接着昨天的《同步FIFOVHDL描述》。突然发现用于实现FIFORAM必须是真正意义上的双口RAM,也就是读写可以同时进行的,以前只是用VHDL描述过单端口的RAM,双口RAM还没有描述过,不过曾经看到过Xilinx FPGA/CPLD的开发工具ISECore Genertor好像提供双口RAM的软核,所以我想用HDL语言也就应该可以描述从而调用双口RAM,这个等到具体写双口RAMRTL代码的时候再研究。还有一个问题就是FIFO的读写请求控制信号必须要控制FIFO读写指针的产生电路,只有读写信号信号有效的时候,FIFO读写指针才能是有效的,负责是无效而且要保持不变,这个容易理解。


              今天,就先完成写指针产生和管理电路的RTL代码吧,其实很简单,就是一个二进制计数器。下面就是VHDL的代码,大家看看有没有什么问题。


       -----------------------------------------------------------------------------------------------------------


-- Designer            :      skycanny


-- Date                  :      2007-2-2


-- Description :      write_pointer is created


 


library ieee;


use ieee.std_logic_1164.all;


use ieee.std_logic_unsigned.all;


use ieee.std_logic_arith.all;


 


entity write_pointer is


       generic


       (


              depth      :      positive  


       );


       port


       (


              clk          :      in     std_logic;


              rst          :      in     std_logic;


              wq          :      in     std_logic;


              wr_pt      :      out   std_logic_vector(depth - 1 downto 0)         


       );


 


architecture RTL of write_pointer is


signal      wr_pt_t   :      std_logic_vector(depth - 1 downto 0);  -- writer pointer counter


 


begin


       process(rst, clk)


       begin


              if rst = '0' then


                     wr_pt_t <= (others => '0');


              elsif clk'event and clk = '1' then


                     if wq = '0' then


                            wr_pt_t <= wr_pt_t + 1;


                     end if;


       end process;


       wr_pt <= wr_pt_t;


end RTL;


------------------------------------------------------------------------------------------------------------


       今天就到这里吧,欢迎大家访问skyanny的笔记(副站) ,最后还是希望大家能投宝贵的一票,谢谢!

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户1402107 2010-6-25 14:43

美国力特保险丝上海唐辉电子有限公司的竞争优势:www.tang.sh.cn; 第一: 自恢复保险丝,陶瓷PTC热敏电阻和美国力特LITTELFUSE保险丝;上海唐辉电子,常年常备有现货!www.tang.sh.cn; 021-57155055; MiniSMD的,贴片1812封装,1206,0805封装,都有现货; 如果暂时没有现货,接定单后,1-2周可以供货,放10%的定金;国内厂家一般做不出来,价钱好,品质好,交货好!关键要看量;品牌,Sea-Land陆海,以前专门给美国力特,瑞侃代工过的,现在自己做市场;www.sea-land.com.tw; 陶瓷PTC热敏电阻,能耐压600V的和内阻为0.3欧以下的,都有! Sea-Land陆海产; 其他保护器件TVS管,MOB压敏电阻,和SIBAR硅保护器;交货期一到二周;我们提供完整的保护方案; 第二:晶振,晶体; 上海唐辉电子,常年常备有现货!www.tang.sh.cn; 32.768KHZ,5PPM;20PPM;50PPM;6pf,12.5pf,音叉型DT-14,DT-26,DT-38,贴片DMX-26S,DT-14系列;都常年常有现货!品牌日本KDS大真空,原装正品;上海唐辉电子32.768KHZ,KDS大真空,精工,MicroCRYSTAL,T7,MC-146都有现货!SMD贴片的32.768KHZ都有现货! 尺寸为:3225的SMD帖片晶振;各频率的都有,13M,26M等常见频率都备有现货;品牌:日本大真空KDS,日本京瓷KYOCERA;常见频率有现货,款到即可发货;非常见频率没有现货,接定单后,1-2周可以供货,放10%的定金;TCXO,VC-TCXO和OCXO有;最新手机电视用:20M,16.384M,30.4M,98.304M,我公司备有现货; 晶振和硅振荡器;交货快,从接单到交货,一般2-3周即可,一般备有现货; 第三: Viking光颉 高精密电阻;台湾ABC千如电感,台湾台庆电感,日本TDK电感和SMD贴片电容,IC集成电路等; SANYO三洋,KEMET基美,松下,三星的坦电容,还有台湾微端Microtips的LCD和LCM液晶屏组,工控用,最有品质和价钱优势;部分IC集成电路也很有优势;您不妨让我们试试看; 以上,均可以大陆上海,深圳和香港交货,如有兴趣,请联系: KDS大真空晶振上海唐辉电子有限公司 微端Microtips液晶屏上海销售处 Sea-Land陆海PPTC自恢复保险丝,陶瓷PTC热敏电阻华东销售处 胡新武QQ: 1025153875; 刘学先生QQ: 289777840; 徐丹QQ: 151891271; 周小红QQ: 490947973; MSN: wolfliuxue@hotmail.com; thzxhong@hotmail.com; 上海办T: 021-57153998, 57155055, 57153855; 传真:021-51901468; 深圳办T: 0755-26560447; 18923481289; 18923487810 传真:0755-61675608; 网站: www.tang.sh.cn; www.sea-land.com.tw; 上海地址: 201401上海市奉贤区西渡镇兴中路225号; 买电子零件,找上海唐辉电子STE,总有一款适合您!~

ash_riple_768180695 2007-2-5 14:01

好,接着看。
相关推荐阅读
用户60452 2008-11-14 20:53
原创java连载--泛型(7)
类型擦除(Type Erasure)       当我们实例化一个泛型的时候,编译器使用一种叫做类型擦除(type erasure)的技术。在类型擦除的过程中,编译器会去除掉 类与接口中所有和类型参数...
用户60452 2008-11-13 22:08
原创java连载--泛型(6)
通配符       在泛型中,我们可以用一个通配符”?”来代替一个未知的类型。例如,使用下面的代码为某种animal指定一个cage:Cage<? extends Animal> some...
用户60452 2008-11-12 20:59
原创java连载--泛型(5)
泛型的子类型       只要两种类型能够相符,我们可以把一种类型的对象赋给另外一种类型的对象。例如,可以把一个Integer赋给一个Object,因为Object是Integer的父类之一。    ...
用户60452 2008-11-10 22:20
原创java连载--泛型(4)
受限的类型参数(Bounded Type Parameters)       有时候,我们要限制传递给类型参数的具体参数。例如,对数进行操作的方法就只能接受Number或者其子类的对象作为改方法的参数...
用户60452 2008-11-09 21:49
原创java连载--泛型(3)
泛型方法和构造器       如果在申明方法或者构造器的时候使用类型参数的话,就可以定义泛型方法和泛型构造器。这和定义一个普通的泛型基本上无二样,除了类型参数的作用范围只是在定义它的方法或者构造器之中...
用户60452 2008-11-08 19:13
原创java连载--泛型(2)
我们可以通过将"public class Box" 修改为 "public class Box<T>"而定义一个泛型,在这个定义中,使用了一个类型变量(type variable) T,而...
我要评论
1
10
关闭 站长推荐上一条 /3 下一条