verilog中的模块连接问题

2019-03-25 10:08发布

如图所示,在verilog语句中用什么语句来吧几个模块连接起来呢?组装成一个整体大的模块,该大模块包含这些小模块。 就是类似于vhdl中的元件声明语句,最后在组装成一个整体大的模块。vhdl语句如下: LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY DDS IS
  PORT(K:IN STD_LOGIC_VECTOR(9 DOWNTO 0);
        EN:IN STD_LOGIC;
        RESET:IN STD_LOGIC;
        CLK:IN STD_LOGIC;
        Q:OUT STD_LOGIC_VECTOR(8 DOWNTO 0));
END ENTITY DDS;
ARCHITECTURE ART OF DDS IS
  COMPONENT SUM99 IS
    PORT(K:IN STD_LOGIC_VECTOR(9 DOWNTO 0);
          EN:IN STD_LOGIC;
          RESET:IN STD_LOGIC;
          CLK:IN STD_LOGIC;
          OUT1:OUT STD_LOGIC_VECTOR(9 DOWNTO 0));
  END COMPONENT SUM99;
  COMPONENT REG1 IS
      PORT(D:IN STD_LOGIC_VECTOR(9 DOWNTO 0);
          CLK:IN STD_LOGIC;
          Q:OUT STD_LOGIC_VECTOR(9 DOWNTO 0));
  END COMPONENT REG1;
  COMPONENT ROM IS
    PORT(CLK:IN STD_LOGIC;
          ADDR:IN STD_LOGIC_VECTOR(9 DOWNTO 0);
          OUTP:OUT STD_LOGIC_VECTOR(8 DOWNTO 0));
  END COMPONENT ROM;
COMPONENT REG2 IS
    PORT(D:IN STD_LOGIC_VECTOR(8 DOWNTO 0);
          CLK:IN STD_LOGIC;
          Q:OUT STD_LOGIC_VECTOR(8 DOWNTO 0));
  END COMPONENT REG2;
  SIGNAL S1:STD_LOGIC_VECTOR(9 DOWNTO 0);
  SIGNAL S2:STD_LOGIC_VECTOR(9 DOWNTO 0);
  SIGNAL S3:STD_LOGIC_VECTOR(8 DOWNTO 0);
  BEGIN
  U0:SUM99 PORT MAP(K=>K,EN=>EN,RESET=>RESET,CLK=>CLK,OUT1=>S1);
  U1:REG1 PORT MAP(D=>S1,CLK=>CLK,Q=>S2);
  U2:ROM PORT MAP(ADDR=>S2,CLK=>CLK,OUTP=>S3);
  U3:REG2 PORT MAP(D=>S3,CLK=>CLK,Q=>Q);
END ARCHITECTURE ART; 
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
阿飞
1楼-- · 2019-03-25 15:13
< / 尝试一下。。。。
eeleader
2楼-- · 2019-03-25 19:11
verilog 直接调用MODULE即可。

一周热门 更多>