新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 用CPLD實現基于PC104總線的429接口板

        用CPLD實現基于PC104總線的429接口板

        作者:吳曉潔 翟正軍 郭琳娜 李蘭蘭 時間:2008-05-23 來源:《計算機工程與設計》 收藏

          (3)產生片選信號/MCS的模塊

        本文引用地址:http://www.104case.com/article/82970.htm

          本模塊產生的/MCS信號用于驅動雙向驅動器,進行數據傳輸,并用于選片對HS3282進行讀寫。此模塊用一片8位判決電路74LS688來實現其功能。其中P5-P1接一組基址選擇開關,Q5~Q1分別接的地址的XA7、XA9、XA8、XA6和XA5,G接總線的地址使能信號端XAEN。只有當XAEN輸入為低時,并且P5~Pl與Q5-Q1的對應端相等時,輸出為低,才有效。

          (4)雙向總線驅動器模塊

          該模塊實現AR1NC429收發電路與的接口總線總線的16位數據傳輸。該模塊設計過程為,先用VHDL設計輸入方式設計兩個單向三態數據收發器,然后用電路設計輸入方式,將兩個單向數據收發器合成為一個雙向數據收發器。雙向總線驅動器模塊的功能表如表1所示。 

                表1 雙向總線驅動器模塊的功能表 使能信號E 方向DIR 操作

                

          雙向總線驅動器模塊產生其一個單向三態數據收發器(TRI_GATE1)的VHDL語言設計如下

                

          產生另一個單向三態數據收發器(TRI_GATE)的VHDL語言與此類似,只是少了D0~D3的輸出部分。兩個單向三態數據收發器構成雙向總線驅動器的電路設計如圖6所示(D0_out~D3_out作為圖5中的D0-D3輸入)

                

          (5)產生HS3282讀信號與寫信號和ENTX使能信號模塊

          本模塊要實現的功能是產生HS3282的讀寫信號和發送使能信號及一個送入PC104總線的輸入輸出16位芯片選擇信號/IO16。該模塊用VHDL語言輸入,其相應的VHDL語言如下

                

                

          (6)中斷控制模塊

          本模塊用于實現中斷控制操作,有一個接收器滿便產生中斷,產生中斷時亦能判斷出中斷源。該模塊是用VHDL輸入方式產生的,其相應的VHDL程序如下

               

          3.3 程序的下載

          各輸入模塊經過編譯處理,根據其相互關系連結,再通過功能仿真和時序仿真確認無誤后,對各輸入輸出端口進行管腳分配。當整個設計完成時,MAX+PLUSII將生成一個文件(.pof),該文件通過下載電纜從JTAG口傳送到PC104板上的芯片內部。這樣就可將構造成自己的專用芯片,由此便可以對設計的PC104板卡進行調試。調試過程中CPLD的設計部分還可根據需要進行修改,只是修改后要重新產生.pof文件,重新將文件加載到芯片中。

          4 結束語

          針對PC104的尺寸小的特點,本論文介紹了用CPLD實現基于PC104總線的429,CPLD大大節省了硬件資源,同時也節省了板卡上的可利用空間,徹底解決了PC104 板卡的小尺寸給設計帶來的困難。且CPLD修改簡單,給調試工作帶來了方便。該板卡經過調試后實驗,可穩定工作。實驗結果表明:應用CPLD簡化了系統結構,縮短了設計周期,提高了系統的可靠性。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 安阳县| 邹城市| 宁津县| 安阳县| 宁强县| 景德镇市| 泗洪县| 阿拉尔市| 肥乡县| 吉林市| 体育| 汽车| 安化县| 江油市| 同心县| 崇信县| 山西省| 扬中市| 江阴市| 长岛县| 泰和县| 丽水市| 乡宁县| 博兴县| 泗洪县| 鄂托克旗| 富平县| 广宁县| 内乡县| 财经| 平度市| 莎车县| 武穴市| 固安县| 资源县| 沙湾县| 鄂尔多斯市| 江孜县| 鄂托克旗| 靖安县| 菏泽市|