新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 以太網通信接口的設計與實現

        以太網通信接口的設計與實現

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

        AD〔00..31〕是PCI總線的共享地址和數據線,每一次PCI傳送都分為地址周期和數據周期。在地址周期,采用0型讀寫時,AD〔00..31〕的內容如下,AD〔00〕和AD〔01〕總為“00”,因為配置讀寫是以雙字為單位的,AD〔02〕~AD〔07〕是要讀寫的PCI配置空間的寄存器號AD〔08〕~AD〔10〕是設備的功能號在一塊PCI卡上有多個功能設備時,為了進一步區分不同的設備就要用到這幾位,由于Realtek8029是單功能設備,故這幾位全為0,AD〔11〕~AD〔31〕是設備選擇位,其中必須有且僅有一位為“1”,如圖2所示,這在物理上表現為總線的AD〔11〕~AD〔31〕中有一根為高電平如果輸出高電平的這根線與某塊PCI卡的PCI IDSEL引腳相連,這塊卡就會被激活,這樣,在緊接著的數據周期中,它就會將其PCI配置空間相應寄存器中的內容放到總線上以供讀取。

        (3) PCI_FRAME、PCI_DEVSEL、PCI_IRDY、PCI_TRDY引腳的處理

        上述四個引腳均是低電平有效,因此需要接上拉電阻,以保證在設備未驅動該引腳時處于穩定的無效狀態,上拉電阻的阻值在1kΩ~10kΩ范圍內,阻值越小,則將該信號驅動為有效的時間越短,但太小又會導致電流過大,所以,要權衡考慮,本設計選用4.7kΩ。

        上述三點對脫機情況下PCI設備的互連具有較普遍的參考意義,除此之外,本設計還有以下比較特殊的幾點:

        ●應將TM1300的PCI,INTA引腳配置為輸入,以便接收Realtek8029的中斷;

        ●PCI時鐘由TM1300提供;

        ●Realtek8029的復位信號也就是TM1300的復位信號,該信號由外部電路提供;

        ●TM1300的PCI STOP、 PCI SERR引腳懸空,表示Realtek8029不具備相應的附加功能。另外,TM1300的PCI INTB、PCI INTC、PCI INTD引腳可以用作用戶中斷。

        3 軟件設計

        該接口設計的軟件結構框圖如圖3所示。其中TM1300運行于pSOS,它是一個簡單的實時多任務嵌入式操作系統,帶有pNA+網絡組件,其pNA+相當于TCP/IP協議棧的擴展,它向上可提供應用程序編程的socket接口,向下可定義一個與網絡接口層交互的接口,其中包括8個函數,分別是:ni_init(接口芯片初始化)、ni_broad-cast(發送廣播分組)、ni_send(發送普通分組)、ni_getpkb(申請發送緩沖區)、ni_retpkb(歸還接收緩沖區)、ni_ioctl(I/O控制操作)、ni_pool(統計量查詢)、Announce(網絡接口驅動調用它把接收到的數據包提交給pSOS)。其中網絡接口層在本應用中就是Realtek8029的驅動程序,它通過硬件抽象層來驅動Realtek8029(硬件抽象層是PCI總線的配置讀寫和I/O讀寫指令集的總稱)。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 尤溪县| 巴彦县| 县级市| 沙湾县| 库尔勒市| 勐海县| 定陶县| 永济市| 原平市| 忻城县| 株洲市| 红安县| 岐山县| 定边县| 理塘县| 绩溪县| 扶风县| 安庆市| 明溪县| 顺昌县| 青阳县| 曲沃县| 宣汉县| 教育| 江门市| 耿马| 社旗县| 柳州市| 云南省| 诸城市| 屏南县| 嘉峪关市| 郧西县| 三河市| 延川县| 监利县| 青州市| 历史| 古丈县| 大埔县| 湟中县|