VHDL: การสร้างการออกแบบตามลําดับชั้น

author-image

โดย

ตัวอย่างนี้อธิบายถึงวิธีสร้างการออกแบบตามลําดับชั้นโดยใช้ VHDL การออกแบบระดับบนสุดที่เรียกว่า top.vhdใช้อินสแตนซ์ของฟังก์ชัน logic.vhd ในไฟล์ top.vhd ส่วนประกอบของฟังก์ชันลอจิกจะถูกประกาศภายในสถาปัตยกรรมที่มีการสร้างอินสแตนซ์ Component Declaration กําหนดพอร์ตของฟังก์ชันที่ต่ํากว่า

ลิงก์ที่เกี่ยวข้อง

สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ตัวอย่างนี้ในโครงการของคุณ โปรดดูที่ ส่วน วิธีใช้ตัวอย่าง VHDL ในหน้าเว็บ VHDL

top.vhd (ไฟล์ระดับสูงสุด)

LIBRARY ieee;
USE ieee.std_logic_1164.ALL;

ENTITY top IS
      PORT(w_in, x_in, y_in :IN std_logic;
               clock        :IN std_logic;
               z_out        :OUT std_logic);
END top;

ARCHITECTURE a OF top IS

COMPONENT logic
        PORT(a,b,c    :IN std_logic;
              x       :OUT std_logic);
END COMPONENT;

SIGNAL w_reg, x_reg, y_reg, z_reg   :std_logic;

BEGIN
low_logic       : logic PORT MAP (a => w_reg, b => x_reg, c => y_reg, x => z_reg);

PROCESS(clock)
BEGIN
     IF (clock'event AND clock='1') THEN
         w_reg<=w_in; x_reg<=x_in; y_reg<=y_in; z_out<=z_reg; END IF; END PROCESS; END a; </PRE>

logic.vhd

LIBRARY ieee;
USE ieee.std_logic_1164.ALL;

ENTITY logic IS
      PORT(a,b,c     : IN std_logic;
             x       : OUT std_logic);
END logic;

ARCHITECTURE a OF logic IS
BEGIN
PROCESS (a,b,c)
BEGIN
     x<=(a and b) or c; END PROCESS; END; </pre>

 

เนื้อหาในหน้านี้เป็นการผสมผสานระหว่างการแปลเนื้อหาต้นฉบับภาษาอังกฤษโดยมนุษย์และคอมพิวเตอร์ เนื้อหานี้จัดทำขึ้นเพื่อความสะดวกของคุณและเพื่อเป็นข้อมูลทั่วไปเท่านั้นและไม่ควรอ้างอิงว่าสมบูรณ์หรือถูกต้อง หากมีความขัดแย้งใด ๆ ระหว่างเวอร์ชันภาษาอังกฤษของหน้านี้กับคำแปล เวอร์ชันภาษาอังกฤษจะมีผลเหนือกว่าและควบคุม ดูเวอร์ชันภาษาอังกฤษของหน้านี้