• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > EDA/PCB > 設計應用 > 在FPGA上對OC8051IP核的修改與測試

    在FPGA上對OC8051IP核的修改與測試

    作者: 時間:2009-12-14 來源:網絡 收藏


    引 言
    20世紀80年代初,Intel公司推出了MCS-51單片機,隨后Intel以專利轉讓的形式把內核發(fā)布給許多半導體廠家,從而出現(xiàn)了許多與MCS-51系統(tǒng)兼容的產品。這些產品與MCS-51的系統(tǒng)結構相同,采用CMOS工藝,因而常用80C51系列來指代所有具有指令系統(tǒng)的單片機。在80C51系列中,以架構清晰、取指帶寬大、時鐘效率高等諸多優(yōu)點受到業(yè)內人士的青睞。本文在分析OpenCores網站提供的一款8051核的基礎上,給出了一種仿真調試方案;利用該方案指出了其中若干邏輯錯誤并對其進行修改,最終完成了修改后核的下載測試。

    本文引用地址:http://www.czjhyjcfj.com/article/191853.htm


    1 8051結構分析
    OpenCores網站提供的OC8051 核與8051的系統(tǒng)結構相同,如圖1所示。該IP核兼容所有8051指令系統(tǒng),內部資源包括:8位CPU,尋址能力達2×64K;4 KB的ROM和128字節(jié)的RAM;4個8位I/O口;16位內部定時/計數(shù)器;5個中斷源和2個中斷優(yōu)先級。采用Verilog語言對其各個模塊進行描述。系統(tǒng)主要模塊及其功能說明如表1所列。不同模塊對應的源文件均是以模塊名稱命名的,例如累加器A對應的源文件為oc8051_acc.v。

    雖然上述OC8051 IP核宣稱兼容所有8051指令系統(tǒng),但是實際執(zhí)行時并非如此。例如在執(zhí)行表2所列的2組功能相同的代碼時,所得到的執(zhí)行結果并不相同。代碼1的執(zhí)行結果是將5寫入地址為0的外部RAM,代碼2的執(zhí)行結果是將5寫入地址為4的外部RAM。造成這種現(xiàn)象的原因是,oc8051_ext_addr_sel模塊配置寫外部RAM地址時延誤了一個時鐘周期。若要OC8051 IP核與標準8051系統(tǒng)一致,須對源文件中類似的邏輯錯誤進行修改。

    2 OC805 1仿真調試及修改
    對于硬件設計而言,仿真的作用是驗證設計結果的邏輯功能是否符合初始規(guī)定,如果在這一層次上設計出了問題,那么以后各個層次的工作將完全不確定。由前文可知,OC8051 IP核存在著邏輯錯誤,所以有必要通過仿真的手段實現(xiàn)錯誤查找和定位,從而最終完成對邏輯錯誤的修改。


    上一頁 1 2 3 下一頁

    關鍵詞: FPGA 8051 OC IP

    評論


    相關推薦

    技術專區(qū)

    關閉
    主站蜘蛛池模板: 刚察县| 伊金霍洛旗| 迭部县| 岐山县| 沙洋县| 于都县| 九江市| 建水县| 定西市| 鄂尔多斯市| 曲松县| 井冈山市| 宣汉县| 铁岭县| 厦门市| 金平| 娄底市| 辰溪县| 昆山市| 宜州市| 墨竹工卡县| 章丘市| 上林县| 湘潭市| 洛浦县| 延庆县| 彭阳县| 河东区| 兴城市| 眉山市| 隆回县| 斗六市| 页游| 招远市| 内丘县| 余姚市| 阿荣旗| 满洲里市| 株洲县| 易门县| 增城市|