新聞中心

        EEPW首頁 > 消費電子 > 設計應用 > 視頻監控系統中ARM與DSP的HPI接口設計

        視頻監控系統中ARM與DSP的HPI接口設計

        作者:鄧健志,程小輝 時間:2008-06-06 來源:微計算機信息 收藏

          3 接口設計

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

          3.1 接口讀/寫時序

          讀/寫時序是實現計算機操作的重要一點,如果操作時序不相符,就會導致讀/寫數據出錯,甚至是操作失敗。所以,滿足操作時序是實現計算機操作的先決條件之一。DM642的接口操作時間為1.3ns~12ns或大約5個CPU時鐘脈沖。S3C44B0X的最高時鐘頻率可達66MHz(約為15.2ns),由此可知DM642的與S3C44B0X在讀/寫時序上的滿足要求,接口通信可以實現。DM642的HPI32讀/寫時序如圖1,設計接口時,必須遵守該時序。由時序圖可知,控制HPI的讀/寫時序,通過控制HCNTL、HR/W_ 、HSTROBE_、HCS_以及HRDY_這幾個信號端口就能實現。

                

                                    圖1 HPI32的讀/寫時序圖                 

          3.2硬件設計

          在本設計方案中,S3C44B0X和DM642都是32位的處理器,且DM642有HPI32模式。為了充分利用資源,發揮其優勢,采用32位模式設計接口。硬件電路如圖2所示。

               

                                     圖2  硬件接口方塊電路圖

          各引腳連接說明如下:

          ①HD[31:0]與CPU的數據線D[31:0]相連。在HPI接口的復用模式,32條數據線HD[31:0]除了傳輸數據外,還需傳輸地址信號。

          ②片選信號HCS_接nGCS4。HPI接口映射到保留的系統存儲器BANK4,主機通過操作BANK4就能控制HPI。

          ③因S3C44B0X沒有HR/W_信號,所以用A1代替,與之相連。A2、A3接HCNTL0/1,用作接口功能選擇。nOE和nWBE分別接HDS1_和HDS2_作為HPI的讀/寫控制信號輸入。

          ④nEWAIT接HRDY_。由于DM642的HRDY_與nEWAIT的有效邏輯電平相反,所以要通過一個非門連接。EINT1接HINT_,用來向主機發中斷請求。

          ⑤HPI32方式下,HHWL和地址選通信號HAS_無需使用,固定接上拉電阻(高電平)。

          3.3 軟件設計

          主機通過HPI接口訪問內部RAM,通過控制寄存器HPIC、地址寄存器HPIA、數據寄存器HPID實現RAM的讀/寫。主機與從機的通信就是對這幾個寄存器的操作。在編寫接口驅動時,HPI接口是被看作接到主機RAM的外設,由硬件設計可知,它被映射到BANK4的存儲空間(對應的存儲器地址是0X08000000~0X0A000000)。

          結合時序分析和硬件的設計,可以編寫接口驅動。驅動主要包括兩部分:首先是HPI寄存器初始化,然后是HPI接口的讀/寫代碼。以下是HPI接口驅動的部分代碼。

          /* 地址及數據初始化 */

          #define BASE_ADDR    0X08000000   // 定義基地址

          /* HPIC、HPIA、HPID讀寫地址的偏移量 */

          #define HPIC_WR             0X00

          #define HPID_A_WR            0X04

          #define HPIA_WR                0X0C

          #define HPIC_R                   0X10

          #define HPID_A_R               0X14

          #define HPIA_R                   0X1C

          /* HPI讀、寫代碼 */

          unsigned long hpi_read_data (unsigned long addr)

          { unsigned long data;

          data=read_data(BASE_ADDR+HPID_R);  // 讀取數據



        關鍵詞: ARM DSP HPI 視頻監控

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 榕江县| 会东县| 齐河县| 沛县| 凤阳县| 饶阳县| 西乌珠穆沁旗| 勐海县| 察隅县| 民和| 阳山县| 左贡县| 元谋县| 邛崃市| 京山县| 海盐县| 汽车| 民丰县| 越西县| 城口县| 新巴尔虎右旗| 扶余县| 多伦县| 阿瓦提县| 子长县| 宜宾县| 长治县| 广安市| 阳泉市| 文昌市| 阿克苏市| 威海市| 绥德县| 邯郸市| 阳谷县| 贵港市| 湛江市| 贵定县| 会东县| 东兰县| 麻城市|