新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > PC-ISDN的接口設計

        PC-ISDN的接口設計

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

          1 系統設計考慮

          計算機的普及及促進了遠程通信的發展。然而1M字節大小的文件經過目前最快的V.34modem傳輸所需的時間是的6倍,所以研制基于的PC-WAN通信具有十分重要的意義。本言語將給出一個PC機和基本速率之間的軟、硬件接口方案。

          PC機是目前廣泛使用的硬件平臺,具有大量的軟件支持。選擇ISA總線作為ISDN卡的接口是因為它能基本速率的ISDN上支持連續雙向數據流。

          為了提高處理速度,本ISDN卡采用一個與80x86軟件兼容的微處理器。以PC機的CPU作為主作模式采用異步模式,即允許每個CPU擁有自己的時鐘并可獨立運行。在存儲器的設計,采用了兩CPU之間的數據傳輸通過共享的IDT雙端口存儲器來進行設計方案;其通信芯片采用Mitel公司生產的能提供2Mbit/s速率的芯片;邏輯電路則采用Altera公司MAX7000系列的EPLD芯片。

          在軟件上,筆者采用松散的耦合模式,即把實時DOS擴展核作為ISDN卡的操作系統,并用它可進行多任務控制和任務的切換以及任務之間的消息傳遞。功能性的應用層通信軟件固化于ISDN卡的EPROM中,而ISDN網絡設備驅動程序則在PC機上進行。兩CPU內部的通信采用在雙端口存儲器開辟環行緩沖區進行消息傳遞。ISDN軟件內部通信是通過在RAM中設置FIFO隊列來接收和發送消息來實現的。

          在物理層,由Mitel的芯片來提供2Mbit/s的數據流速率。在網絡層,則采用IP、PPP或MP標準協議。PC機一側的ISDN網絡驅動程序運行于Windows 95平臺。其應用程序采用C語言和80X86匯編程序語言編寫,其研制開發工作是在普通工作站上利用編譯器、匯編器、連接器和調試器來完成的。

          2 硬件方案

          ISA卡的ISDN硬件電路見圖1所示。其處理器部分包含、CY7C286 EPROM、CY7C1009 RAM和IDT7006S雙端口RAM。的軟件控制著通信部分以及通過雙端口RAM的消息層PC接口。工作時,由80C188的LCS選通128k的RAMCY 7C1009(00000H~1FFFFH);UCS選通EPROM 7C286(F0000H~FFFFFH);MCS選通雙端口RAM 7006S(80000H~83FFFH);而將譯碼地址30000H~30400H映射為PCS0~PCS4,以選通通信電路部分。

          7C286是CYPRESS公司的64k×8的CMOS EPROM,用于固化程序(F0000~FFFFFH):7C1009是CYPRESS的128k×8的CMOS RAM,用于存放通信數據和ISDN消息(00000~1FFFFH)。IDT7006S是IDT的16k靜態CMOS雙端口RAM,主要負責PC與80C188的通信。IDT7006S映射到PC機的存儲器地址范圍是A0000~A3FFFH,映射到ISA卡上80C188的地址范圍是80000~83FFFH.80C188和PC在兩側異步地讀取雙端口RAM的動作則由中斷標志信號INT1和INTr控制著。互斥性的存取是由信號燈標志SEM1和SEMr來控制的。

          ISDN的通信由Mirtel的芯片MH89790、MT8980、MT8920和MT8940完成,并由ST總線(串行Telecomm Bus)、同步串行總線、標準的2Mbps PCM流來連接。MH89790是PCM數字中繼接口電路,它支持HDB3和AMI線路碼。來自ISDN線路的2Mbps PCM流可通過其DSTo腳輸出;來自引腳DSTi的ST總線PCM流經過它導入ISDN線路。MH89790由ST總線并行存取電路所控制,它一方面將來自80C188的并行總線數據轉換為ST總線串行數據,由STo0和Sto1腳輸出送給MH89790和CSTi0和CSTi1。另一方面,在相反的方向上作串-并轉換:即把MH89790的CSTo輸出的串行數據流給MT8920的STi0,并經MT890轉換為并行數據后送入CPU。MT8920的A0~A4與89C188的地址總線相連,D0~D7與80C188的數據總線相連,電路的選通由PCS0控制。

          來自MH89790的PCM幀信號進入MT8980后分離出D信道標志,并輸出到HDLC協議控制器的引腳CDSTi,以使MT8952支持數據鏈路層協議。80C188通過信號PCS2、地址總線、數據總線來控制MT8952,并為其在接收時提供D信道標志,發送時則通過引腳CDST0插入D信道標志。MT8952與數字開關MT8980的輸出B信道的傳輸幀的引腳ST01相連而進入MH89790,并進而輸出到ISDN線路上。

          80C188通過地址和數據總線來控制MT8980開關,并在STi0接收時提取B信道幀;發送時則通過引腳STo1插入B信道幀信息。MT8980數字開關的輸入為2Mbps的ST總線數據流,幀內有32個8bit信道。MT8980由80C188的PCS4選通,其地址信號A0~A5則從32個8bit的信道中選擇一路來接收或成送B信道信號或D信道信號。

          MT8940數字鎖相環電路用于產生時間控制和線路同步信號。它可將MT89790從ISDN線路上接收的PCM信號中提取的8kHz信號(引腳C8)。外部晶振信號16.388MHz由C16i引腳輸入。而MT8940則從引腳F0b輸出8kHz的幀同步信號,從引腳C20輸出2.048MHz的信號,從引腳C4b輸出4.096MHz信號。利用這些信號可進行MH89790、MT8980、MT8920之間的ST總線同步。

          3 軟件方案

          軟件包含80C188的PC卡部分和PC機一側的驅動程序部分。其軟件結構如圖2所示。


          PC卡的軟件圍繞實時DOS內核分成兩個擴展部分(任務),分別是ISDNS任務和IPC任務。其中ISDNS可為物理層的通信硬件提供支持,它包含發送PC消息、接收PC消息和ISDN控制等模塊,可用來接收和發送消息,并完成ISDN推薦標準I.441和I.451的第2和第3層協議的工作。ISDNS任務可將來自ISDN線路的消息推入RAM中建立的QIM隊列。為向ISDN線路上發送消息,它需在RAM中組織B信道的QOM隊列,以啟動PC消息。

          通過QIM和QOM這兩個隊列可實現與IPC任務的接口,以完成與PC的內部通信。通信在雙端口RAM中通過分配環行接收隊列RBIM和環行發送隊列RBOM而實現的。任務IPC包含傳輸PC消息、傳輸ISDN消息和PC傳輸控制等模塊,可用于從RBOM隊列中獲取PC消息,并將其放入空閑B信道的QOM隊列中。同樣地,它也從QIM隊列提取ISDN消息,并將其存放到RBIM環行隊列中。利用這兩個任務實現的軟件環境擴展了DOS核,同時賦予了其多任務功能。

          為了支持來自PC側的ISDN卡,筆者為PC在Windows95操作系統下編寫了NDIS ISDN驅動程序。該驅動程序可通過雙端口上的RBIM和RBOM隊列來實現與卡上的IPC任務的接口。ISDN卡上的消息被驅動程序存放到RBOM隊列中。當ISDN消息從RMIM隊列被取卡,并存于PC的硬盤上后,便可借助于高層PC軟件作進一步的處理。

          借助于Windows 95、點對點協議(PPP)、多連接協議(MP)以及TCP/IP協議,便可以通過ISDN來實現文件傳、電子郵件和可視會議等功能。

          4 結論

          本文給出了PC與基本速率的ISDN的接口電路以及采用ISA總線卡的形式設計。其設計的接口卡在PC WAN上所能實現速率是目前最好MODEM的6倍。在Windows 95下,其使用界面與普通modem的用戶界面類似。并具備如下特點:

          ●可用最小響應時間得到2Mbit/s的系統速率;
          ●與MS、Windows和DOS兼容;
          ●支持標準的通信協議;
          ●兼容全套的Internet軟件;
          ●具有熟悉的用戶界面。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 隆化县| 太仆寺旗| 收藏| 平舆县| 舞钢市| 宁陵县| 元氏县| 余庆县| 安新县| 厦门市| 兴安县| 太白县| 山阳县| 平定县| 杭锦后旗| 上虞市| 明光市| 望城县| 龙南县| 临安市| 延庆县| 贵德县| 隆安县| 苍南县| 土默特右旗| 沈丘县| 马龙县| 蒙城县| 库尔勒市| 田东县| 富川| 元阳县| 四子王旗| 惠来县| 南投市| 武义县| 屯昌县| 新竹市| 洪泽县| 长丰县| 濮阳县|