片上系統(SOC)設計流程及其集成開發環境
3 基于可編程片上系統(SOPC)的集成設計環境
本文引用地址:http://www.104case.com/article/85492.htm片上系統(SOC)設計所需要的EDA工具,若從硬件設計角度看,在設計流程的前端與ASIC設計差別不大。但是,從整個芯片設計角度出發,這兩種類型的芯片設計區別較大。這是因為,在SOC設計中,一般都含有微處理器,所設計的系統級芯片都必須有設備驅動程序與操作系統或嵌入式實時操作系統接口,必須有應用程序完成數字計算、信號處理變換、控制決策等功能。因此,在設計的前期,需要進行軟、硬件協同設計,以便確定那些功能是由硬件完成的,那些功能是由軟件完成的,并且進行適當劃分。在設計的中后期,要進行軟硬件協同驗證,即把軟硬件設計放到一個虛擬的集成環境中進行仿真驗證,以便驗證硬件的性能是否達到設計目標,軟件功能是否實現設計要求。
根據可編程片上系統(SOPC)設計流程和軟硬件協同設計的一般流程,作者提出基于可編程片上系統(SOPC)的芯片級電子系統的集成設計環境,如圖4所示。此集成環境是一種典型的軟硬協同設計集成環境(或平臺),是由二個不同層次、不同功能的EDA集成設計環境組成。
第一層次的EDA集成設計環境是SOC系統級集成設計環境,主要用于完成嵌入式系統的系統級設計。首先,需要根據客戶的要求,進行系統的功能定義和性能評估,以便確定系統規格;其次,根據已經確定的系統規格,應用系統級描述語言(C/C++或System C等)進行系統設計描述與設計驗證,以便確定所定義的系統規格在功能上是否可以實現;再次,在證明了系統規格在功能上可以實現后,就需要進行系統軟硬件功能劃分,以便確定系統的哪些功能是由軟件系統完成的、哪些功能是由硬件系統完成的、哪些功能需要軟硬件協同完成,對于既可以通過軟件系統完成也可以通過硬件系統完成的功能,需要進行性能與成本的評估;最后,對已經確定的硬件系統功能,還需要進行芯片與PCB功能的劃分,以便確定哪些功能可以在芯片上實現、哪些功能只能在PCB上實現。
第二層次的EDA集成設計環境是SOC硬件系統集成設計環境和SOC軟件系統集成設計環境,主要用于完成嵌入式系統的軟硬系統設計。首先,根據系統級設計中的功能劃分,分別進行SOC的硬件系統設計和SOC的軟件系統設計。此時的硬件系統設計和軟件系統的設計是并行進行的。在硬件系統設計中,通常經歷幾個設計階段:行為描述與驗證(包括硬件系統的系統級、算法級、寄存器傳輸級的行為描述與仿真驗證)、邏輯綜合與驗證、可測性設計綜合與邏輯生成、器件適配與仿真驗證、器件物理編程與物理驗證、版圖生成與驗證。其中,前4個設計階段是基于SOPC的硬件系統設計流程。在軟件系統設計中,通常經歷如下幾個階段:軟件系統編輯、軟件系統編譯、軟件系統仿真調試、軟件系統編程等。其次,在軟硬件系統設計過程中,為了確保系統的性能價格比達到最優,需要不斷進行軟硬件協同設計。通常在硬件系統行為描述與仿真之后,就可以把所設計的硬件系統與軟件系統置于虛擬器件的軟硬件協同仿真驗證環境中,以便驗證硬件系統集成的系統所能達到的功能、性能、成本等,從而使得所實現的芯片級電子系統的性能價格比達到最優。
綜上所述,基于可編程片上系統(SOPC)的嵌入式系統集成設計環境是一個相當復雜的集成EDA開發環境,常見的可編程片上系統集成化EDA開發套件—— Altera公司的Quartus II系列的EDA工具套件和Xilinx公司的ISE 5.x系列的EDA工具套件的儲存成化程度雖然較高,但也難以達到圖4所示的集成化程度。因此,需要系統設計設計者根據現有的商用化EDA工具構建這樣的集成設計環境。有理由相信在不久的將來,將會推出類似的集成EDA工具環境。
4 片上系統(SOC)是嵌入式系統發展方向
嵌入式系統的核心部件是微處理器,由于集成電路技術的發展,以及電子產品及時面市的要求,促使微處理器(包括微控制器、數字信號處理器、嵌入式處理器)向單芯片系統方向發展,從而使得基于片上系統(SOC)的電子系統成為嵌入式系統的發展方向和主流。目前國內的基于片上系統(SOC)的嵌入式系統設計大都停留在板級電子系統設計水平,隨著可編程片上系統(SOPC)器件的應用發展,相信在今后的若干年內,基于SOC的嵌入式系統設計會逐漸過渡到芯片級電子系統的設計水平。由于芯片級電子系統設計方法與板級電子系統設計方法有著本質的區別,因此了解與掌握芯片級電子系統的設計流程、集成設計環境對于系統設計者來講是至關重要的,為此本文以圖示方式直觀地給出基于可編程片上系統(SOPC)的芯片級電子系統設計流程和集成設計環境,全面展示了芯片級電子系統所涉及到的問題。
評論