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

    EEPW首頁 > 嵌入式系統 > 設計應用 > 多串口單一中斷源的芯片設計

    多串口單一中斷源的芯片設計

    作者: 時間:2010-07-27 來源:網絡 收藏
    與單片機的硬件連接比較簡單,其中,并行數據端口 d_inout跟單片機 p0口相連,接收單片機發出的低 8位地址, ale與單片機地址鎖存允許信號引腳相連,odd_check為奇偶校驗結果輸出引腳,連接由使用者決定。3 模塊
    3.1 頂層模塊頂層模塊在各模塊之前作為統籌規劃整個程序,是設計過程中再繼續完善和修正的重要部分。在頂層模塊里根據不同的地址輸入,選擇標志或者數據的傳送。為了更好地將兩次操作區分開來使編程更加容易,論文中還設計了一個標志寄存器rd_check_counter,在不同的操作來時,它的值不同。
    3.2控制模塊
    控制模塊要完成置標志位,定時輸出信號和向單片機傳送標志位信息等功能。模塊接收端有中斷請求到來,中斷控制模塊即將相應的標志位置 1,在數據被讀取之后,又立刻將標志位清 0 [3]。
    3.3模塊模塊結構圖如圖 2b。在接收方面,收發器模塊實現接收數據,并將數據串轉并,儲存到寄存器里等待單片機的讀取。在發送方面,收發器將單片機數據總線送過來的并行數據串行輸出[4]。
    數據接收時數據經過格式轉換后便被放入 8字節的緩存里面,該緩存在每次數據存入后就啟動計數器,當過一段時間還沒有新的數據存入時,收發器即可以向中斷控制模塊提出中斷請求并且等待單片機對數據的讀取。發送數據時,收發器接收到單片機送來的數據并將其存儲起來,在串行數據發送設備準備好的情況(txrdy為 1)下再進行格式轉換并發送,無論接收還是發送串行數據都是通過外部時鐘進行計數控制的[5]。
    3.4地址寄存器模塊 .

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

    地址鎖存模塊在 ale信號(單片機地址鎖存允許信號)到來時將地址低 8位鎖存起來,并送給中斷控制和上層模塊使用[6]。
    3.5端口
    上述幾個模塊合成后的外觀及其端口特征描述如下圖 3所示: 1、set_mode(0,1):兩位信號輸入引腳,用于模式的選擇,模式 1和模式 2分別用 01和 10來選擇。2、ale:地址鎖存允許信號輸入引腳,與單片機的 ale相連,在 ale下降沿的時候將地址低 8位鎖存到地址鎖存模塊。3、clk:時鐘信號輸入引腳,時鐘的頻率定為串行數據傳輸頻率的 4倍,如串行通信的波特率是
    9600bps,則 clk的頻率是 9600×4=38400Hz。
    4、cs:芯片總片選信號輸入引腳,低電平有效。
    5、rd,wr:單片機向芯片讀寫的控制引腳,低電平有效。
    6、rxd1,rxd2,rxd3,rxd4:串行輸入引腳。
    7、INT0:中斷信號輸出引腳,下降沿有效。
    8、odd_check1_o,odd_check2_o,odd_check3_o,odd_check4_o:送給單片機的奇偶校驗標志信號輸出引腳。
    9、rdfull:數據緩沖器標志信號輸出引腳,該信號用‘1’和‘0’表明是否有收發器的緩存了數據尚未被提取。
    10、rdrdy1,rdrdy2,rdrdy3,rdrdy4:引腳分別用于表明各個收發器是否正忙,從該收發器開始接收數據到數據被單片機讀取整個過程,其相應的rdrdy引腳輸出‘1’。
    11、txd1,txd2,txd3,txd4:串行數據輸出引腳。
    12、tdempty:該引腳輸出為‘1’時表明芯片已沒有正在發送或者是將要發送的數據。
    13、txrdy1,txrdy2,txrdy3,txrdy4:分別為收發器 1、2、3和 4可否進行發送控制輸入端,輸入為‘1’表示可以進行串行數據的發送。
    14、d_inout(7:0):雙向數據總線。應與單片機 p0口相連。
    15、addr_h(7:0):地址高 8位。
    4程序的綜合及仿真
    4.1 設計綜合及實現
    本設計綜合使用的工具是 Xilinx公司的 XST,它是內嵌在 ISE7.2i里面的。綜合過程將把軟件設計的 HDL描述與硬件結構掛鉤,是將軟件轉化為硬件電路的關鍵步驟 [7-9]。本設計綜合時選用的芯片是Spartan-ⅡE系列的xc2s100e。
    綜合工具生成網表文件后,就可以實現設計,實現的步驟有:轉換(將多個設計文件合并為一個網表),映射(將網表中的邏輯符號(門)整合到物理元件中),布局布線(將元件放到器件中,并將它們連接起來,同時提取出時序數據,并生成各種報告)。
    4.2 綜合布線結果及分析



    圖 4為資源利用結果圖表,由圖可見,slices的占用量為 722個,占該芯片 slices總數的 60%。slice registers的使用數量為 591個,占該芯片總數的 24%。4輸入查找表的使用總量是 915個,占該芯片查找表總數的 38%。
    4.3 布線后仿真
    本文中所舉出的測試均為布線后的仿真測試,該仿真的仿真延時文件包含的延時信息最全,不僅包含了門延時,還包含了實際布線延時,所以布局布線后仿真最準確,能夠較好的反映芯片的實際工作情況。



    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 娱乐| 儋州市| 宁明县| 抚松县| 德江县| 沁阳市| 大邑县| 浦江县| 闽清县| 云安县| 信阳市| 图片| 潮安县| 乌苏市| 名山县| 亳州市| 海伦市| 呼伦贝尔市| 东光县| 楚雄市| 封开县| 镇坪县| 古浪县| 辽阳县| 永兴县| 孟连| 洛浦县| 邯郸县| 江都市| 宁化县| 鸡东县| 泽普县| 绵阳市| 福州市| 鄯善县| 永年县| 丰城市| 楚雄市| 峡江县| 上饶市| 乃东县|