新聞中心

        EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于CPLD的PLC背板總線協(xié)議接口芯片的設(shè)計(jì)

        基于CPLD的PLC背板總線協(xié)議接口芯片的設(shè)計(jì)

        作者: 時(shí)間:2012-07-30 來源:網(wǎng)絡(luò) 收藏

        3.2 基于Verilog HDL 語言的硬件程序設(shè)計(jì)

        本設(shè)計(jì)采用Verilog HDL 語言進(jìn)行協(xié)議芯片的程序設(shè)計(jì),Verilog HDL 語言是一種硬件描述語言,設(shè)計(jì)數(shù)字芯片時(shí)可以按照層次描述,并可以進(jìn)行時(shí)序建模。本設(shè)計(jì)采用混合設(shè)計(jì)模式,主要設(shè)計(jì)的模塊有狀態(tài)機(jī)、協(xié)議幀檢測(cè)、FIFO 控制器設(shè)計(jì)等。

        1)狀態(tài)機(jī)設(shè)計(jì)。

        協(xié)議芯片的頂層模塊是狀態(tài)控制器部分,協(xié)議芯片共有四個(gè)狀態(tài), 分別處理基于Verilog HDL 程序語言的狀態(tài)機(jī)描述偽代碼如下:

        基于CPLD的PLC背板a class=

        2)協(xié)議幀檢測(cè)。

        本協(xié)議芯片的幀校驗(yàn)和采用簡(jiǎn)單的加和形式進(jìn)行,在接收一方,如果數(shù)據(jù)幀中有用數(shù)據(jù)的加和同后續(xù)的校驗(yàn)和字節(jié)相同,則協(xié)議是正確的,否則丟棄該幀。協(xié)議幀校驗(yàn)和計(jì)算的代碼如下:

        基于CPLD的PLC背板總線協(xié)議接口芯片的設(shè)計(jì)方案

        3)FIFO 設(shè)計(jì)。

        FIFO 利用了MachXO 系列 的嵌入式SRAM 塊的資源,Lattice 公司的ispLEVER 7.0 軟件提供了可配置的IP 軟核,該軟核可以采用基于嵌入式SRAM 塊實(shí)現(xiàn), 也可以使用查找表實(shí)現(xiàn),F(xiàn)IFO 的IP 核框圖如圖4 所示,F(xiàn)IFO 的可配置參數(shù)包括FIFO字節(jié)深度、EmptyFull、Almostempty 和AlmostFull觸發(fā)字節(jié)深度、數(shù)據(jù)寬度、大小端模式等。

        圖4 可配置FIFO 控制器IP 軟核框圖
        圖4可配置FIFO 控制器IP 軟核框圖



        關(guān)鍵詞: CPLD PLC 背板 總線協(xié)議

        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 鄢陵县| 东至县| 桦南县| 夏邑县| 万年县| 九龙县| 泰和县| 凭祥市| 扎兰屯市| 寿光市| 周口市| 固原市| 苗栗市| 化德县| 崇文区| 洛扎县| 托克托县| 麻阳| 岑溪市| 高青县| 财经| 中方县| 新宁县| 黎川县| 宽甸| 南昌县| 禄劝| 钦州市| 兴和县| 常德市| 航空| 荆门市| 汉阴县| 淄博市| 万山特区| 天镇县| 平阳县| 余干县| 汨罗市| 佛冈县| 上林县|