新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的三線制同步串行通信控制器設計

        基于FPGA的三線制同步串行通信控制器設計

        作者: 時間:2012-08-23 來源:網絡 收藏

        如圖3所示,根據設計要求,可將劃分成3個主要功能模塊:接口模塊、接收模塊和發送模塊。

        三線制同步串行通信控制器結構圖
        圖3 結構圖

        (1)接口模塊:用于各種全局信號的邏輯組合譯碼控制。同時,對輸入的系統時鐘進行時鐘分頻,為接收模塊和發送模塊提供串行同步時鐘信號。

        (2)接收模塊:用于接收外圍串行設備傳來的串行數據,此功能模塊的核心是接收FIFO和串/并變換兩大模塊,其中接收FIFO作為數據緩沖器暫存接收到的數據。在接收數據標志、接收移位寄存器和接收移位計數器的配合驅動下,串行數據按照MSB先、LSB后的順序經過串/并變換后,并行數據被存儲于接收FIFO中,等待中斷響應后CPU對數據進行處理。

        (3)發送模塊:用于向外圍串行設備發送串行數據,此功能模塊的核心是發送FIFO和并/串變換兩大模塊。CPU將要發送的數據先放到系統的并行數據總線上,并被暫存于發送FIFO中,在響應發送中斷信號后,并行數據按照MSB首發、LSB后發的順序,在控制信號驅動下,經過并/串變換,發送的數據最終以串行數據格式被送往外圍串行設備端口。

        IP核實體名接口用VHDL語言定義如下:

        ENTITY SerSendRec IS

        PORT( RST_n:IN STD_LOGIC;

        Clk:IN STD_LOGIC;

        Cs:IN STD_LOGIC;

        Strobe:IN STD_LOGIC;

        Rw:IN STD_LOGIC;

        Addr:IN STD_LOGIC_VECTOR(2 DOWNTO 0);

        Rdata:IN STD_LOGIC;

        Rclk:OUT STD_LOGIC;

        Rgate:OUT STD_LOGIC;

        Int:OUT STD_LOGIC;

        Sdata:OUT STD_LOGIC;

        Sclk:OUT STD_LOGIC;

        Sgate:OUT STD_LOGIC;

        Data:INOUT STD_LOGIC_VECTOR(7 DOWNTO 0));

        END SerSendRec;




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 名山县| 旺苍县| 抚松县| 贡觉县| 梁平县| 沈丘县| 荃湾区| 汝南县| 报价| 绥化市| 远安县| 新丰县| 和林格尔县| 习水县| 临洮县| 新河县| 东阳市| 扶余县| 阳泉市| 杭锦后旗| 保定市| 和田市| 民乐县| 定陶县| 舒兰市| 辛集市| 甘谷县| 湖口县| 巨鹿县| 安义县| 华池县| 仙游县| 日土县| 盘山县| 万年县| 新乡市| 雷波县| 吴堡县| 沧州市| 太湖县| 松滋市|