No.99486 作者:9992000 邮件:fd-163@163.com ID:15141 登陆:4次 QQ:36425701 文章数:7篇 最后登陆IP:124.90.20.89 最后登陆:2006/12/9 10:46:34 注册:2003/9/23 11:05:23 财富:25 发帖时间:2006/11/10 16:29:22 发贴者IP:124.90.27.121 标题:9992000:菜鸟学VHD,请高手指点,我的程序能优化吗(节省资源) 摘要:No.99486菜鸟学VHD,请高手指点,我的程序能优化吗(节省资源) 这是一个双16位计数器(二个输入时钟,二个门控,),再用二根选择线分4次读出数据,程序编译了一下,发现很占用资源(我用的是EPM3604),高手们看看能精简吗?谢谢了 LIBRARY ieee; USE ieee.std_logic_1164.ALL; USE ieee.std_logic_unsigned.ALL; ENTITY DubleCnt16 IS PORT( clk1,CLK2,GATE1,GATE2,CLR,RD,CS : IN Std_logic; DS : in std_logic_vector(1 downto 0); McuDataBus: out std_logic_vector(7 downto 0) ); END DubleCnt16; ARCHITECTURE using_std_logic OF DubleCnt16 IS SIGNAL COUNT1,COUNT2 : Std_logic_vector(15 DOWNTO 0); BEGIN PROCESS(CLR,CLK1,GATE1,CLK2,GATE2) BEGIN IF CLR = '1' THEN COUNT1 <= (OTHERS => '0'); ELSIF falling_edge(clk1) AND GATE1= '1' then -- IF COUNT1 < "1111111111111111" then COUNT1 <= COUNT1 +1; -- ......
>>返回讨论的主题
|