模块例化是怎么进行的?——FPGA学习笔记(四)

最近在学FPGA的时候,总搞不清楚例化两个字是什么意思?什么是模块例化?各个模块例化之后怎么连接的弄得我晕头转向,今天用一个流水灯的程序探究了一下。

首先我们看最底层的三个模块程序:

module smg_scan_module       //数码管选通模块
(
     input sys_clk,          //输入时钟和复位信号
     input rst_n, 
     output [5:0]Scan_Sig    //输出数码管选通信号    为6位数据信号
);
module smg_encode_module              //数码管编码模块
(
	 input sys_clk,               
	 input rst_n,
	 input [3:0]Number_Data,      //输入Number_Data 是一个0-9的数值     为4位数据信号
	 output [7:0]SMG_Data         //输出SMG_Data即8位数码管的操作信号    为8位数据信号
);
module smg_control_module            //数码管控制模块
(
         input sys_clk,                  
	 input rst_n,
	 input [23:0]Number_Sig,     //输入 Number_Sig    为24位数据信号
	 output [3:0]Number_Data     //输出 Number_Data   为4位数据信号
);

这是最底层的,再看上面一层对这三个模块的例化程序

module smg_interface
(
     input                       sys_clk,
	 input                   rst_n,
	 input [23:0]            Number_Sig,
	 output [7:0]            SMG_Data,
	 output [5:0]            Scan_Sig
);
	 smg_control_module U1         
	 (
	          .sys_clk            (sys_clk        ),
		  .rst_n              ( rst_n         ),
		  .Number_Sig         ( Number_Sig    ),    // input - from top
		  .Number_Data        ( Number_Data   )   // output - to U2
	 );
     smg_encode_module U2
	 (
	          .sys_clk             (sys_clk      ),
		  .rst_n               (rst_n        ),
		  .Number_Data         ( Number_Data ),   // input - from U2
		  .SMG_Data            ( SMG_Data    )          // output - to top
	 );
	 smg_scan_module U3
	 (
	          .sys_clk             (sys_clk      ),
		  .rst_n               ( rst_n       ),
		  .Scan_Sig            ( Scan_Sig    )  // output - to top
	 );

如上面程序所示,例化数码管扫描程序为U3,例化数码管编码模块为U2,例化数码管控制模块为U1,

.sys_clk (sys_clk)这句话的意思就是,将这个模块的输入 sys_clk 命名为 sys_clk,

总的意思就是通过对各个小模块的输入输出的例化命名,使这三个模块相连,构成这一层的模块。

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值