文章 ID: 000085360 內容類型: 疑難排解 最近查看日期: 2012 年 10 月 15 日

未遵循 VHDL 規則的區塊名稱將導致問題

環境

  • Intel® Quartus® II 訂閱版
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    描述 S-function「mip_control」在「psc_ctrl_fixed/控制」中報告的錯誤:
    Altera DSP Builder Advanced Internal Restriction:在 d:/SJ/nightly/12.0/178/w32/p4/p4/ip/aion/src/src/mip_common/hw_model_dup_remover.cpp:191 中,d:/SSP Builder 進階內部限制:'blockMap.find(fu->GetName())== blockMap.end()。
    解決方法

    舉例來說,如果您在排程子系統內的設計有兩個模組:-

    psc_ctrl_fixed/FIX_MCTRL/Fix_Mtr_Ctrl1_DSPBA/Current_DSPBA/T/KU1/Mult
    psc_ctrl_fixed/FIX_MCTRL/Fix_Mtr_Ctrl1_DSPBA/Current_DSPBA/T/KU1/Mult

    這些系統會在內部轉換成平面名稱,位於預定子系統層級:-

    Fix_Mtr_Ctrl1_DSPBA_Current_DSPBA_T_KU1_Mult
    Fix_Mtr_Ctrl1_DSPBA_Current_DSPBA_T_-KU1_Mult

    大多數非字母與數位字元在 VHDL 符號中不合法,因此它們會轉換為底線:-

    Fix_Mtr_Ctrl1_DSPBA_Current_DSPBA_T_KU1_Mult
    Fix_Mtr_Ctrl1_DSPBA_Current_DSPBA_T__KU1_Mult

    雙重底線在 VHDL 符號中也不合法,因此會將其分解成單一底線:-

    Fix_Mtr_Ctrl1_DSPBA_Current_DSPBA_T_KU1_Mult
    Fix_Mtr_Ctrl1_DSPBA_Current_DSPBA_T_KU1_Mult

    這兩個符號現在完全相同,這會導致 DSPBA 管道內部發生錯誤。

    解決方法是避免使用非字母與數位字元來區分同一層級的子系統。

    相關產品

    本文章適用於 1 產品

    Intel® 可程式裝置

    這個頁面的內容綜合了英文原始內容的人工翻譯譯文與機器翻譯譯文。本內容是基於一般資訊目的,方便您參考而提供,不應視同完整或準確的內容。如果這個頁面的英文版與譯文之間發生任何牴觸,將受英文版規範及管轄。 查看這個頁面的英文版。