❶ 如何將從網上下載的晶元模型導入到multisim14.0軟體中
方法/步驟
❷ 嵌入式是如何做到將某功能植入晶元的
用一片或少數幾片大規模集成電路組成的中央處理器。
這些電路執行控制部件和算術邏輯部件的功能。微處理器與傳統的中央處理器相比,具有體積小,重量輕和容易模塊化等優點。
一) 微處理器的基本組成部分有:寄存器堆、運算器、時序控制電路,以及數據和地址匯流排。微處理器能完成取指令、執行指令,以及與外界存儲器和邏輯部件交換信息等操作,是微型計算機的運算控制部分。它可與存儲器和外圍電路晶元組成微型計算機。但這些專用操作系統都是商業化產品,其高昂的價格使許多低端產品的小公司望而卻步;而且,源代碼封閉性也大大限制了開發者的積極性。
二) 而linux的開放性,使得許多人都認為Linux非常適合多數Intemet設備。Linux操作系統可以支持不同的設備和不同的配置。
Linux對廠商不偏不倚,而且成本極低,因而很快成為用於各種設備的操作系統。嵌入式linux是大勢所趨,其巨大的市場潛力與醞釀的無限商機必然會吸引眾多的廠商進入這一領域。
三) 嵌入式linux操作系統
Linux是一類Unix計算機操作系統的統稱。Linux操作系統的內核的名字也是"Linux".Linux操作系統也是自由軟體和開放源代碼發展中最著名的例子。嚴格來講,Linux這個詞本身只表示Linux內核,但在實際上人們已經習慣了用Linux來形容整個基於Linux內核,並且使用GNU工程各種工具和資料庫的操作系統。
Linux得名於計算機業余愛好者LinuSTorvalds.Linux的程序源碼全部公開,任何人都可以根據自己的需要裁剪內核,以適應自己的系統。
linux移植到ARM920T內核的s3c2410處理器晶元為例,介紹了嵌入式linux內核的裁剪以及移植過程,文中介紹的基本原理與方法技巧也可用於其它晶元。
四) 內核移植過程
1 ,建立交叉編譯環境
在一種計算機環境中運行的編譯程序,能編譯出在另外一種環境下運行的代碼,我們就稱這種編譯器支持交叉編譯。
這個編譯過程就叫交叉編譯。簡單地說,就是在一個平台上生成另一個平台上的可執行代碼。這里需要注意的是所謂平台,實際上包含兩個概念:體系結構(Architecture)、操作系統(Operating System)。
2,同一個體系結構可以運行不同的操作系統;同樣,同一個操作系統也可以在不同的體系結構上運行。舉例來說,我們常說的x86 Linux平台實際上是Intel x86體系結構和Linux for x86操作系統的統稱;而x86 WinNT平台實際上是Intel x86體系結構和Windows NT for x86操作系統的簡稱。
3,交叉編譯交叉編譯呢,簡單地說,就是在一個平台上生成另一個平台上的可執行代碼。這里需要注意的是所謂 平台,實際上包含兩個概念:體系結構(Architecture)、操作系統(Operating System)。同一個體系結構可以運行不同的操作系統;同樣,同一個操作系統也可以在不同的體系結構上運行。
4,交叉編譯器完整的安裝涉及到多個軟體安裝,最重要的有binutils、gcc、glibc三個。其中,binutils主要用於生成一些輔助工具;gcc則用來生成交叉編譯器,主要生成arm-linux-gcc交叉編譯工具;glibc主要是提供用戶程序所使用的一些基本的函數庫。
5,自行搭建交叉編譯環境通常比較復雜,而且很容易出錯。本文使用的是開發板自帶的交叉編譯器,即CROSS一3.3.4.交叉編譯器,該編譯只需將光碟中的arm-linux一3.3.4.bar.bz2用tar ixvf arm-linux一3.3.4.bar.bz2命令解壓到/usr/local/arm下即可。
五) 修改Makefile
Makefile文件Makefile一個工程中的源文件不計數,其按類型、功能、模塊分別放在若干個目錄中,makefile定義了一系列的規則來指定,哪些文件需要先編譯,哪些文件需要後編譯,哪些文件需要重新編譯,甚至於進行更復雜的功能操作,因為makefile就像一個Shell腳本一樣,其中也可以執行操作系統的命令。
修改內核目錄樹根下的Makefile時,可先指明交叉編譯器。設計時,可向Makefile中添加如下內容:
ARCH ?=arm
CROSS_COMPILE?=arm-linux-然後設置PATH環境變數,使其可以找到其交叉編譯工具鏈,然後運行vi~/.bashrc,再添加如下內容:
export PATH=/usr/local/arln-linux一3.4.4/bin:$PATH
六) 設置Flash分區
此處一共要修改3個文件,分別如下:
(1)在arch/arm/machS3C2410/devs.c文件中添加如下內容:
#include
#include
#include
然後再建立Nand flash分區表;同時建立Nand F1ash晶元支持,最後加入Nand FLASH晶元並支持到Nand Flash驅動。
另外,還要修改arch/arm/machs3c2410/devs.C文件中的s3c_device_nand結構體變數,同時添加對dev成員的賦值。
(2)指定啟動時初始化
內核啟動時,可以依據對分區的設置進行初始配置,然後修改arch/am4mach-s3c2410/machsmdk2410.e文件下的smdk2410_devices[],指明初始化時包括在前面所設置的flash分區信息,並添加如下語句:
&s3c_device_nand,
(3)禁止Flash ECC校驗
內核一般都是通過UBOOT寫到Nand Flash的。UBOOT則通過軟體ECC演算法來產生ECC校驗碼,這與內核校驗的ECC碼不一樣,內核中的ECC碼是由S3C2410中Nand Flash控制器產生的。所以,這里選擇禁止內核ECC校驗。
修改drivers/mtd/nand/s3c2410.C 下的s3c2410_nand_init_chip ()函數,可在該函數體最後加上如下一條語句:
chip->eccmode=NAND_ECC_NONE;
❸ 怎麼把程序寫進晶元里
1、安裝VSpeedSetup.exe軟體,安裝USB_DRIVER驅動軟體,將電腦和編程器連接,裝載晶元,晶元方向口和編程器提示方向口一致。
❹ 圖像演算法怎麼移植到嵌入式產品上
一般可以比較容易地移植c語言實現的演算法,有可能需要調整演算法用到的數據類型,數據結構這些
如果要利用嵌入式產品的優化性能(一般與硬體和指令系統相關),就需要替換現有演算法的部分函數以嵌入式產品提供的演算法庫函數,這當然又涉及數據類型,介面,數據結構這些內容
如果演算法效率仍然不能滿足要求,就需要匯編級,寄存器級的編程了,充分利用嵌入式晶元的流水線,匯流排,並行運算,特殊指令這些特點來優化演算法關鍵部分.
普通可以更換嵌入式晶元,選擇速度更快,能力更強的來減少優化花費的成本,以適應晶元的不斷更新換代.
❺ 一個演算法是怎樣固化在晶元裡面的啊 哪裡有這方面的資料可以看啊謝謝了啊~~
在計算機原理基礎部分有解釋 我已經忘記了 好象是設定好這些數據的000101110後通過一次大的脈沖或別的什麼讓這段數據處半短路這樣電流就無法通過111010001這些相反的電瓶了
❻ 攝像頭圖像處理怎麼向攝像頭內置晶元寫入演算法
那要做晶元的開發了,這個要有晶元的詳細資料,還要會開發程序。