最近在學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_inte***ce
( 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,
總的意思就是通過對各個小模組的輸入輸出的例化命名,使這三個模組相連,構成這一層的模組。
FPGA設計 VHDL語言篇 1 模組例化
關於模組例化有兩種方式,一種是通過宣告,在進行例化,另一種是直接進行例化操作,第一種可以通過configuration進行配置,便於統一管理配置,第二種呼叫方便,但不能通過configuration進行配置,不利於日後配置結構體。宣告 component port port1 port2 end c...
什麼是模組化?模組化怎麼實現?
前言 增加印象,留下腳印 忘記還可以翻一翻 奧利給。1,什麼是模組化 公司裡乙個專案是有很多程式設計師一起開發的,例如 多人運動 這個專案 有程式設計師a 程式設計師b 程式設計師c 程式設計師a 寫了 aaa.js 裡面有幾千行 幾萬行 程式設計師b 寫了 bbb.js 裡面有幾千行 幾萬行 程式...
什麼是模組化?模組化的好處
1.高內聚低耦合,有利於團隊作戰,當專案很複雜的時候,將專案劃分為子模組分給不同的人開發,最後再組合在一起,這樣可以降低模組與模組之間的依賴關係體現低耦合,模組又有特定功能體現高內聚。2.可重用,方便維護,模組的特點就是有特定功能,當兩個專案都需要某種功能的時候,我們定義乙個特定的模組來實現該功能,...