嵌入式系統的實時數據接口擴展 文章作者:朱廣信 石旭剛 金 蓉 陳 彪
發布時間:2007/8/24 0:00:00 訪問次數:428
摘要:介紹了一種以Samsung公司的ARM7TDMI CPU S3C4510B為核心、μCUnux 為操作系統的嵌入式系統應用于MPEC-2或MPEG-4等實時多媒體數據的網絡傳輸所面臨的問題,并提出了相應的解決方案。
關鍵詞:嵌入式系統 μClinux 實時多媒體 接口擴展
嵌入式系統目前已廣泛應用于信息家電、網絡通信和工業控制等各個領域。典型的嵌入式系統主要由嵌入式硬件和軟件構成,其中硬件部分的核心為嵌入式處理器。與通用處理器相比,其在功耗、體積、成本等方面都受到應用要求的制約。嵌入式系統的軟件部分可以像計算機一樣使用操作系統,目前已有許多成熟嵌入式操作系統,如VxWorks、pSOS、Nucleus、Windows CE 以及嵌入式Linux 等。當然,在一些簡單應用中許多嵌入式系統的軟件并沒有使用操作系統,只有一些循環控制。這樣,軟件復雜度大大降低,從而減少存儲器的容量要求,但是這樣的軟件在重復使用、網絡支持等方面的能力相對較弱。
ARM系列內核是目前嵌入式處理器中廣泛使用的內核。采用ARM內核的處理器具有體積小、功耗低、成本低和性能高的特點。在全球有眾多生產ARM內核處理器的廠商。
Linux是一種很受歡迎的開放源碼操作系統,原先被設計應用于桌面系統,后被廣泛應用于服務器。由于其開放源碼和內核可裁減等特性,Linux逐漸被修改用于嵌入式領域。目前已有多個嵌入式應用的版本,μClinux 是其中的一個分支,最早被設計應用于微控制領域。其最大特征就是沒有MMU(內存管理單元),很適合于許多低端的、沒有MMU的嵌入式處理器。
本文設計了一種嵌入式系統用于多媒體實時數據的網絡傳輸。ARM內核處理器與嵌入式 Linux 是目前嵌入式應用中的一種典型組合,選用了 Samsung 公司的16/32位ARM7TDMI 內核的網絡處理器 S3C4510B 為嵌入式硬件核心,μClinux 為操作系統。該系統支持完整的TCP/IP協議以及許多其它的網絡協議,同時它具有很低的成本。
1 嵌入式系統的構成
1.1 硬件系統
嵌入式硬件系統主要由 CPU、Flash ROM、SDRAM、以太網物理層、FIFO以及CPLD等芯片構成,如圖1所示。
(1) CPU
本系統采用了 ARM7TDMI 內核的 RISC 處理器S3C4510B。該芯片具有如下一些主要特點:
8/16/32位的外部總線支持 ROM、RAM、Flash 存儲器、DRAM 和外部I/O;
·8K 字節的 Cache;
·一個I2C 接口;
·一個帶 MII 接口的100Mbps/10Mbps 以太網控制器;
·兩個 UART 通道;
·兩個通用 DMA 通道;
·兩個 HDLC 通道;
·18個通用I/0通道;
·兩個32位定時器;
·共有21個中斷源,其中4個用于外部中斷;
·一個內部 PLL 用于提供高頻率的系統時鐘,最高系統時鐘可達50MHz。
由此可見,S3C4510B 很適用于低端的網絡設備,如集線器、交換機、家庭網關等。
(2)Flash ROM 和 SDRAM
Flash ROM 和 SDRAM 構成了系統的存儲空間。其中Flash ROM 作為程序存儲器,用于存放操作系統、應用程序等;SDRAM為系統內存。
(3)以太網物理層和串行接口芯片
CPU 內部的以太網控制器只提供了MAC(媒體接入控制器),需在外部接一個物理層芯片完成編解碼和時鐘恢復等功能。串行接口芯片主要完成串行線路接口的電平轉換。
(4)CPLD 和 FIFO
為了能使系統支持實時數據通信,需要在外設和嵌入式系統的外部總線之間加上 FIFO 和CPLD。FIFO 用于數據緩沖,CPLD 用于產生 FIFO控制邏輯和外部總線控制邏輯。
1.2 操作系統
ARM7TDMI 內核已被眾多的嵌入式操作系統所支持,如 VxWorks、pSOS 及 Nucleus 等。這些商業化操作系統在網絡和用戶圖形界面等方面都有很好的支持,并且在穩定性和實時性方面都有相應的保證,但其價格也相當高。這里選用了開放源碼的嵌入式 Linux,它一般免費或花較少的費用就可得到,同時它在網絡和圖形界面方面也有很好的支持。另外,嵌入式 Linux 的高度模塊化使它可以根據實際應用需要靈活配置,能有效精簡內核代碼。
摘要:介紹了一種以Samsung公司的ARM7TDMI CPU S3C4510B為核心、μCUnux 為操作系統的嵌入式系統應用于MPEC-2或MPEG-4等實時多媒體數據的網絡傳輸所面臨的問題,并提出了相應的解決方案。
關鍵詞:嵌入式系統 μClinux 實時多媒體 接口擴展
嵌入式系統目前已廣泛應用于信息家電、網絡通信和工業控制等各個領域。典型的嵌入式系統主要由嵌入式硬件和軟件構成,其中硬件部分的核心為嵌入式處理器。與通用處理器相比,其在功耗、體積、成本等方面都受到應用要求的制約。嵌入式系統的軟件部分可以像計算機一樣使用操作系統,目前已有許多成熟嵌入式操作系統,如VxWorks、pSOS、Nucleus、Windows CE 以及嵌入式Linux 等。當然,在一些簡單應用中許多嵌入式系統的軟件并沒有使用操作系統,只有一些循環控制。這樣,軟件復雜度大大降低,從而減少存儲器的容量要求,但是這樣的軟件在重復使用、網絡支持等方面的能力相對較弱。
ARM系列內核是目前嵌入式處理器中廣泛使用的內核。采用ARM內核的處理器具有體積小、功耗低、成本低和性能高的特點。在全球有眾多生產ARM內核處理器的廠商。
Linux是一種很受歡迎的開放源碼操作系統,原先被設計應用于桌面系統,后被廣泛應用于服務器。由于其開放源碼和內核可裁減等特性,Linux逐漸被修改用于嵌入式領域。目前已有多個嵌入式應用的版本,μClinux 是其中的一個分支,最早被設計應用于微控制領域。其最大特征就是沒有MMU(內存管理單元),很適合于許多低端的、沒有MMU的嵌入式處理器。
本文設計了一種嵌入式系統用于多媒體實時數據的網絡傳輸。ARM內核處理器與嵌入式 Linux 是目前嵌入式應用中的一種典型組合,選用了 Samsung 公司的16/32位ARM7TDMI 內核的網絡處理器 S3C4510B 為嵌入式硬件核心,μClinux 為操作系統。該系統支持完整的TCP/IP協議以及許多其它的網絡協議,同時它具有很低的成本。
1 嵌入式系統的構成
1.1 硬件系統
嵌入式硬件系統主要由 CPU、Flash ROM、SDRAM、以太網物理層、FIFO以及CPLD等芯片構成,如圖1所示。
(1) CPU
本系統采用了 ARM7TDMI 內核的 RISC 處理器S3C4510B。該芯片具有如下一些主要特點:
8/16/32位的外部總線支持 ROM、RAM、Flash 存儲器、DRAM 和外部I/O;
·8K 字節的 Cache;
·一個I2C 接口;
·一個帶 MII 接口的100Mbps/10Mbps 以太網控制器;
·兩個 UART 通道;
·兩個通用 DMA 通道;
·兩個 HDLC 通道;
·18個通用I/0通道;
·兩個32位定時器;
·共有21個中斷源,其中4個用于外部中斷;
·一個內部 PLL 用于提供高頻率的系統時鐘,最高系統時鐘可達50MHz。
由此可見,S3C4510B 很適用于低端的網絡設備,如集線器、交換機、家庭網關等。
(2)Flash ROM 和 SDRAM
Flash ROM 和 SDRAM 構成了系統的存儲空間。其中Flash ROM 作為程序存儲器,用于存放操作系統、應用程序等;SDRAM為系統內存。
(3)以太網物理層和串行接口芯片
CPU 內部的以太網控制器只提供了MAC(媒體接入控制器),需在外部接一個物理層芯片完成編解碼和時鐘恢復等功能。串行接口芯片主要完成串行線路接口的電平轉換。
(4)CPLD 和 FIFO
為了能使系統支持實時數據通信,需要在外設和嵌入式系統的外部總線之間加上 FIFO 和CPLD。FIFO 用于數據緩沖,CPLD 用于產生 FIFO控制邏輯和外部總線控制邏輯。
1.2 操作系統
ARM7TDMI 內核已被眾多的嵌入式操作系統所支持,如 VxWorks、pSOS 及 Nucleus 等。這些商業化操作系統在網絡和用戶圖形界面等方面都有很好的支持,并且在穩定性和實時性方面都有相應的保證,但其價格也相當高。這里選用了開放源碼的嵌入式 Linux,它一般免費或花較少的費用就可得到,同時它在網絡和圖形界面方面也有很好的支持。另外,嵌入式 Linux 的高度模塊化使它可以根據實際應用需要靈活配置,能有效精簡內核代碼。