ID บทความ: 000077247 ประเภทข้อมูล: การแก้ไขปัญหา การตรวจสอบครั้งล่าสุด: 28/08/2007

ทําไมซอฟต์แวร์ Quartus II จึงแปลงพินสองทิศทางของฉันเป็นพินแบบเอาต์พุตเท่านั้น

สิ่งแวดล้อม

BUILT IN - ARTICLE INTRO SECOND COMPONENT
คำอธิบาย

ซอฟต์แวร์ Quartus® II เวอร์ชั่น 6.0 และมีการสังเคราะห์สัญญาณทิศทาง VHDL อย่างเข้มงวดมากขึ้น เนื่องจากเป็นการบังคับใช้กฎ VHDL ซอฟต์แวร์ Quartus II จึงแปลงบัฟเฟอร์สองทิศทางที่มีรหัสไม่ถูกต้องเป็นพินเอาต์พุต

ตัวอย่างเช่น หากคุณใช้บัฟเฟอร์แบบสองทิศทางตามที่แสดงไว้ในรหัสต่อไปนี้ ซอฟต์แวร์ Quartus II จะสังเคราะห์พินเอาต์พุต (เริ่มต้นด้วยเวอร์ชัน 6.0)

process(mdio_out,mdio_oe)
begin
    if (mdio_oe = '1') then
        mac_mdio <= mdio_out;
    else
        mac_mdio <= 'Z';
    end if
end process;

mdio_oe <= NOT(mdio_oe_n);
test_out <= mac_mdio and test;
mii_mdio <= mac_mdio;

หากmac_mdioเป็นสัญญาณและmii_mdioเป็นพอร์ตสองทิศทาง การบ้านหลังสุดจะเป็นไปในทิศทางเดียวกัน ดังที่เขียนไว้ ไม่สามารถให้ข้อมูลไหล จาก mii_mdio ไปยัง mac_mdioได้ ตั้งแต่เวอร์ชัน 6.0 ซอฟต์แวร์ Quartus II จะบังคับใช้ลักษณะทิศทางของการบ้าน VHDL นี้โดยการใส่บัฟเฟอร์ระหว่างmac_mdioและmii_mdio บัฟเฟอร์นี้จะปรากฏอยู่ในตัวแสดง RTL เป็นบัฟเฟอร์ทิศทางในซีรีส์ที่มีบัฟเฟอร์ Tri-State และมีการสังเคราะห์พินสองทิศทาง (mii_mdio) เป็นเอาต์พุตเท่านั้น

ซอฟต์แวร์ Quartus II เวอร์ชั่นก่อนหน้าไม่ได้บังคับใช้ลักษณะทิศทางของการบ้านประเภทนี้โดยสังเคราะห์โค้ดด้านบนเป็นพินสองทิศทาง

เพื่อให้สอดคล้องกับมาตรฐาน VHDL ให้ลบคําสั่งการกําหนดสัญญาณสุดท้ายในตัวอย่างด้านบนและเขียนรหัสดังนี้:

process(mdio_out,mdio_oe)
begin
    if (mdio_oe = '1') then
        mii_mdio <= mdio_out;
    else
        mii_mdio <= 'Z';
    end if;
end process;

mdio_oe <= NOT(mdio_oe_n);
test_out <= mii_mdio and test;

ผลิตภัณฑ์ที่เกี่ยวข้อง

บทความนี้จะนำไปใช้กับ 1 ผลิตภัณฑ์

อุปกรณ์ที่ตั้งโปรแกรมได้ Intel®

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