DVD刻錄時代的到來似乎也很猛,看看今年DVD刻錄機的價格,真是感慨其向平民普及的決心與速度。
DVD刻錄時代,一直有三股力量在相互抗衡著,它們就是DVD-RAM、DVD-R/RW、DVD+R/RW。一時間,用戶似乎摸不著頭腦,但很快的,就像VHS與BETA一樣,局勢也逐漸明朗了一些。DVD-RAM的高可靠性、高尋址能力再加上極差的兼容性,使其得到了專業用戶的賞識,而DVD±R/RW則以出色的與傳統DVD和兼容能力贏得了普通大眾的歡迎。
DVD±R/RW之間可以說半斤八兩,在普遍應用的級別上,兩者很難分出個好與壞,但DVD-R/RW比后者先行。雖然DVD+R/RW的能力在誕生之日起就很強,但業界仍然要尊重前輩(確切地說是其開創下來的市場),而且在某些方面,DVD-R/RW還是要比DVD+R/RW強的,不信你就試試在影碟機上的兼容性,即使用上了BookType,仍然不會比前輩出色。所以,DVD論壇(DVD-R/RW的養父母)與DVD+RW聯盟(DVD+R/RW的創造者)如今都在重視著對方,雖然前者一直不允許后者使用DVD的Logo,雖然后者也一直在攻擊前者的能力低下……事實上,DVD-R/RW的確有些落后了,DVD論壇的臃腫的機構設置阻礙了DVD-R/RW速度規格的提升。雖然業界的廠商已經推出了16X DVD-R的試制品,但官方的8X標準才剛剛獲得通過,而那邊1-16X的DVD+R以及雙層DVD+R標準(1.29版)已經發布好一個月了(5月28日發布),驅動器都也已經整裝待發,準備大規模上市。
![]() |
![]() |
現在已經很難找到沒有上面兩個標志的DVD刻錄機了
但畢竟雙方在市場上的勢力是相當的,所以有遠見的廠商率先跨越兩大家族推出了DVD-Dual產品,這個集合了DVD±R/RW的規格讓用戶不再煩惱。而與DVD-Dual同時面世的DVD-Multi格式,則很少有人去問津,因為那里有個DVD-RAM,普通用戶一聽到這個名字可能轉身就走了。嗯,因為DVD-RAM對傳統DVD不太友善(兼容性),也導致了用戶對它的不太友善,這又能怪誰呢?
然而,仍有更大野心的廠商希望能統一產品層面上的標準,其實這么做的原因也在于現在還真的不好說哪個標準真的會走向滅亡,因此最省事的方法就是全部支持,從而誕生了DVD-SuperMulti這樣一個與DVD-Dual一樣的,沒有官方支持的一個業界規格。這也就是我今天要談論的主角。
DVD-SuperMulti=(DVD-Dual)+(DVD-RAM)
雖然題目是講DVD-SuperMulti,但為什么在前面仍要介紹DVD±R/RW呢?那是因為要強調它們的存在,從而也反過來為DVD-SuperMulti做一個鋪墊。
DVD-SuperMulti實現了三大DVD刻錄規格的統一
很多人一提起DVD-Multi或DVD-SuperMulti就會與DVD-RAM等同起來。不錯,對DVD-RAM的支持是它們的一大特色,但它不僅僅是DVD-RAM。如今,DVD論壇所推廣的DVD-Multi其實已經是空架子一個,沒有廠商繼續推出這一規格的產品,就連最堅定的支持者日本松下公司也投向了SuperMulti的懷抱,所以不提也罷。而以SuperMulti為例,我們絕不能忽視其仍然支持DVD±R/RW的事實,不能將DVD-RAM的光芒罩在其上。在筆者的眼中,DVD-SuperMulti就等于DVD-Dual與DVD-RAM的結合體。DVD-RAM是額外的贈予而不是當今市場的主角,如果愿意,你完全可以忽略它的存在,但當你覺得需要DVD-RAM時,DVD-SuperMulti就是目前唯一的解決方案——道理就是這么的簡單。
]]>Z-RAM最初作為全球成本最低的嵌入式內存技術而應用于邏輯芯片,如移動芯片組、微處理器、網絡和其他消費應用。2005年12月AMD首次獲得該項技術授權,將這項技術應用于微處理器設計。目前此次與Hynix的合作,使Z-RAM成為超過300億美元的存儲器市場中成本最低的存儲器技術。
“Z-RAM保證提供一種在納米工藝上制造高密度DRAM的最佳方法,”海力士研發部副總裁Sung-JooHong說。“以ISi的 Z-RAM創新為基礎,我們看到了開創全新產品平臺的潛力,這將幫助我們繼續保持和擴展在存儲器市場中所處的領先地位。”
“海力士決定與ISi的合作是對我們Z-RAM存儲技術的實力和商業效益的進一步肯定,尤其是海力士是存儲器芯片市場的主導者,它的產品被廣泛應用于多種電子設備中,如個人電腦、服務器、工作站、顯卡以及手持設備,如手機、MP3播放器和數碼相機等,”ISi首席執行官Mark-EricJones說。“采用ISi的Z-RAM技術制成的存儲器芯片尺寸更小,成本更低。我們期待著與海力士在下一代DRAM芯片中的合作,從而為最終用戶帶來極大的性能和可用性方面的優勢。”
ISi營銷副總裁JeffLewis說:“我們相信這是ISi和Hynix的重要里程碑。Z-RAM將對DRAM的設計和制造產生深遠影響。由于2006年DRAM產業產品銷售超過330億美元,這樣的發展將顯著地影響到整個電子行業。”
ISi的Z-RAM與目前標準DRAM和SRAM(靜態存儲器)方案不同,因為其單晶體管(1T)位單元結構是全球最小的存儲單元,這使其成為全世界密度最高、成本最低的半導體存儲方案。通過采用絕緣體上硅結構(SOI)晶圓,Z-RAM的單晶體管存儲位單元可利用電路制造中發現的浮體效應(FBE)而變成現實。此外,因為Z-RAM是利用了SOI自然產生的效應,在存儲位單元內無須通過改變外在工藝來構建電容或其它復雜結構。
]]>
圖1
溝道中形成了一個耗盡區,這樣,在特定的柵極電壓下,已被編程的部分被置于“off(較高阻抗)”,而沒有被編程或沒有被擦寫的器件為“on(較低阻抗)”。
隨著汽車設計要求的復雜性日益增加,浮柵存儲技術的局限性越來越明顯。例如,它的編程處理需要數毫秒ms時間,這對高安全性的應用來說已經是非常長的時間了。在碰撞事件中,電源迅速丟失,幾乎沒有信息能夠及時保存到浮柵器件中。
編程處理還對隔離層具有破壞性,因此這類器件的擦寫次數很有限,一般在10萬次到100萬次之間。就乘客傳感器而言,數據更新的次數即使是對上限100萬次來說也太頻繁了。對于一般的每秒一次的寫入速度要求,浮柵器件使用不到12天中就會達到使用壽命。若是把數據緩沖到RAM中,在斷電時再寫入到浮柵非易失性存儲器中,又會在EDR中產生寫入速度問題,因此并非真正有效的解決方案。
在智能安全氣囊系統中,不僅必需存儲碰撞事故中的數據,還需要存儲事故發生前的數據。利用滾動日志來存儲碰撞前的數據是很理想的方法,但對浮柵存儲器件而言,這種解決方案已證實存在問題,因為它們的擦寫次數有限。由于安全氣囊模塊具有很大的電容,以便存儲足夠的能量來激活安全氣囊,故在事故發生之后可能有足夠的殘余電量把緩沖器中的數據寫入到非易失性存儲器中。能夠寫入的數據量取決于尚可用的電量,也即電容中的殘余能量和存儲器的寫入速度。典型2Kbyte浮柵存儲器的寫入速度可以達到約每5us寫入4字節。故而,要寫入整個浮柵存儲器可能需要1秒多的時間。
F-RAM能夠提供極高的擦寫次數和速度,有效解決了上述問題。Ramtron的F-RAM技術把鐵電材料和標準半導體芯片設計及制造技術結合在一起,推出了非易失性存儲器和模擬/混合信號產品。這些產品具有快速讀/寫性能、幾乎無限的擦寫次數和靜態RAM(SRAM)的超低功耗,并在掉電時能夠安全存儲數據,這些都是標準RAM技術所無法提供的功能。
F-RAM單元采用業界標準CMOS工藝制造,通過兩個電極板之間的鐵電晶體來形成電容,類似于DRAM電容的構造。但是不像一般的易失性存儲器那樣把數據作為電容上的電荷來存儲,F-RAM是把數據存儲在鐵電晶體內。
當在鐵電晶體上施加一定電場時,晶陣的中心原子在電場作用下沿電場方向在晶體內運動,它通過一個能量壁壘(energybarrier)造成電荷尖峰。內部電路感測到這一電荷尖峰,并且設置存儲器。電場消失后,中心原子會保持在原來的位置,從而保存存儲器的狀態。(見圖2)。
圖2
鐵電薄膜放在CMOS基層之上,并置于兩電極板之間,使用金屬互連并鈍化后完成鐵電制造過程。(見圖3)。
以下內容含腳本,或可能導致頁面不正常的代碼 |
---|
說明:上面顯示的是代碼內容。您可以先檢查過代碼沒問題,或修改之后再運行. |
1. 下載vsftpd源碼,這個不用多說,不知道在哪里下載可以問google。
2. 解壓縮,然后編譯,用交叉編譯:make CC=arm-linux-gcc,此時編譯會出現錯誤,大概是說找不到/lib/libcap.so這個庫文件,我只是簡單的修改了一下vsf_findlibs.sh文件中的該庫的位置,如下:
locate_library /usr/local/arm/3.4.1/arm-linux/lib/libcap.so.1 && echo "/lib/libcap.so.1";
/usr/local/arm/3.4.1/arm-linux/lib/libcap.so.1是我的交叉編譯的庫文件路徑(我不清楚這樣改會不會有其他不穩定的隱患,但改后可以編譯,也可以運行)。
3.將編譯生成的vsftpd文件拷貝到arm平臺的文件系統中,如/usr/local/sbin/下。并拷貝vsftpd.conf文件到文件系統的/etc中,在我的平臺上,將改文件的內容修改為:
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
idle_session_timeout=60
data_connection_timeout=20
listen=YES
listen_port=21
ftp_username=download
secure_chroot_dir=/data
4. 修改完配置文件后,就可以運行了:
/usr/local/sbin/vsftpd &
用ps查看一下是否有該進程,如果進程存在,就表示ftp服務啟動成功。
]]>I.MX31 MDK2 是一款以AR11為核心的開發板,除了嵌入式傳統的優點(剪裁小、低功耗、低成本)外,I.MX31芯片具有MPEG4全雙工功能,而且在I.MX31內部擁有一個3D模塊加速模塊,能進行3D效果處理,不占CPU資源。開發板上的電源管理芯片也是I.MX31的另一大優勢,擁有了這個芯片可以很好的控制能耗,它也成為了I.MX31 MDK2成為手持設備最佳選擇的原因之一I.MX31 MDK2開發板,高主頻配合MPEG4全雙高和一個不占CPU內存的3D加速模塊,使芯片性能大大提升,再加上開發板上的智能電源管理設備使得I.MX 31 MDK2在無屏情況下的全功能功耗只有180毫安,這些就是I.MX 31 MDK2開發板成為高校和手持設備生產商最愛的原因。它的主要應用領域是掌上3D娛樂設備、3G手機、學習機等手持設備領域。
I.MX27 MDK1 是一款以ARM9為核心的開發板,除了嵌入式傳統的優點(剪裁小、低功耗、低成本)外,I.MX27芯片具有H.264全雙工功能,其原因在于I.MX27內部集成了一個硬件編解碼模塊,采用硬件去做視頻的編解碼,不占CPU資源,這樣一來可以大大提高芯片的性能,另外,他的研發成功可以幫助客戶直接量產大大加上研發成本,所以,很多做視頻傳出領域的客戶都選擇這款產品極開發板I.MX27 MDK1主要應用在安監安防、智能手機、IP Camera、多媒體廣告機、車載娛樂設備、DVR等視頻傳輸領域, 對工程師而言,不需要花大量的時間再去研究便可以幫助公司進行生產,我個人還是很推崇這種產品的。
]]>
一.ARM linux的中斷向量表初始化分析
ARM linux內核啟動時,通過start_kernel()->trap_init()的調用關系,初始化內核的中斷異常向量表.
/* arch/arm/kernel/traps.c */
void __init trap_init(void)
{
extern void __trap_init(unsigned long);
unsigned long base = vectors_base();
__trap_init(base);
if (base != 0)
oopsprintk(KERN_DEBUG "Relocating machine vectors to 0x%08lx\n", base);
#ifdef CONFIG_CPU_32
modify_domain(DOMAIN_USER, DOMAIN_CLIENT);
#endif
}
vectors_base是一個宏,它的作用是獲取ARM異常向量的地址,該宏在include/arch/asm-arm/proc-armv/system.h中定義:
extern unsigned long cr_no_alignment; /* defined in entry-armv.S */
extern unsigned long cr_alignment; /* defined in entry-armv.S */
#if __LINUX_ARM_ARCH__ >= 4
#define vectors_base() ((cr_alignment & CR_V) ? 0xffff0000 : 0)
#else
#define vectors_base() (0)
#endif
對于ARMv4以下的版本,這個地址固定為0;ARMv4及其以上的版本,ARM異常向量表的地址受協處理器CP15的c1寄存器(control register)中V位(bit[13])的控制,如果V=1,則異常向量表的地址為0x00000000~0x0000001C;如果V=0,則為:0xffff0000~0xffff001C。(詳情請參考ARM Architecture Reference Manual)
下面分析一下cr_alginment的值是在哪確定的,我們在arch/arm/kernel/entry-armv.S找到cr_alignment的定義:
.globl SYMBOL_NAME(cr_alignment)
.globl SYMBOL_NAME(cr_no_alignment)
SYMBOL_NAME(cr_alignment):
.space 4
SYMBOL_NAME(cr_no_alignment):
.space 4
分析過head-armv.S文件的朋友都會知道,head-armv.S是非壓縮內核的入口:
1 .section ".text.init",#alloc,#execinstr
2 .type stext, #function
3ENTRY(stext)
4 mov r12, r0
5
6 mov r0, #F_BIT | I_BIT | MODE_SVC @ make sure svc mode
7 msr cpsr_c, r0 @ and all irqs disabled
8 bl __lookup_processor_type
9 teq r10, #0 @ invalid processor?
10 moveq r0, #'p' @ yes, error 'p'
11 beq __error
12 bl __lookup_architecture_type
13 teq r7, #0 @ invalid architecture?
14 moveq r0, #'a' @ yes, error 'a'
15 beq __error
16 bl __create_page_tables
17 adr lr, __ret @ return address
18 add pc, r10, #12 @ initialise processor
19 @ (return control reg)
20
21 .type __switch_data, %object
22__switch_data: .long __mmap_switched
23 .long SYMBOL_NAME(__bss_start)
24 .long SYMBOL_NAME(_end)
25 .long SYMBOL_NAME(processor_id)
26 .long SYMBOL_NAME(__machine_arch_type)
27 .long SYMBOL_NAME(cr_alignment)
28 .long SYMBOL_NAME(init_task_union)+8192
29
30 .type __ret, %function
31__ret: ldr lr, __switch_data
32 mcr p15, 0, r0, c1, c0
33 mrc p15, 0, r0, c1, c0, 0 @ read it back.
34 mov r0, r0
35 mov r0, r0
36 mov pc, lr
文章出處:飛諾網(www.firnow.com):http://dev.firnow.com/course/6_system/linux/Linuxjs/2008827/137989.html
]]>[正文]
1.流水線結構 pipeline
- MIPS 是最簡單的體系結構之一,所以使大學喜歡選擇 MIPS 體系結構來介紹計算體系結構課程。
- ARM has barrel shifter
shifter是兩面性的,一方面它可以提高數學邏輯運算速度,另一方面它也增加了硬件的復雜性。所以和可以完成同樣功能的adder/shift register相比,效率更高,但是也 占用更多的芯片面積。
- MIPS have "branch delay slot" and "load delay slot"
MIPS使用編譯器來解決上面的兩個問題。因為MIPS最初的設計思想就是使用簡單的RISC硬體,然后靠編譯器及其他軟體技術,來達成RISC的完整概念。
2.指令結構 instruction
- MIPS have 32bit and 64bit architecture,but ARM only have 32bit architecture
ARM11 局部64位
- MIPS是開放式的架構,用戶可以在開發的內核中加入自己的指令,
- ARM has 4-bit condition code in every instruction
ARM 在這一點很像x86。MIPS在MIPS IV也加入"conditional move"指令,來提高pipeline的效率。
- ARM has pre- and post-increment addressing modes
auto-increment/decrement on load/store instructions
- 在節省代碼空間方面,MIPS16 很類似ARM Thumb
3.寄存器 register
- 由于MIPS內核中有32個注冊器(Register),而ARM只有16個,這種結構設計上的先天優勢,決定了在同等性能表現下,MIPS的芯片面積和功耗會更小。
- ARM 有一組特殊用途寄存器cp0-cp15,可以使用MCR,MRC等指令控制; 相對應的,MIPS也有cp0 0-30,使用mfc0,mtc0 指令控制。
- Register banking in ARM. r8-r12 FIQ mode;r13:SP r14 R
感覺不出banked register有什么好處。
- MIPS has a hard-wired-to-zero register ,but ARM not
MIPS use register $0 for Zero
4.地址空間 address space
- MIPS 起始地址是0xbfc00000,會有4Mbyte的大小限制,但一般MIPS芯片都會采取一些方法解決這個問題。
ARM沒有這種問題。
MIPS24K 起始地址改到了0xbf000000,現在有16Mbyte的空間了。
- MIPS don't have to turn paging on to enable the cache.
MIPS have the address space for both cache and un-cache
but ARM need enable/disable cache
5.功能 function
- Float point: MIPS64 has.
ARM's support for FP is limited, and usually not included, and it is a 32 bit architecture
- ARM use JTAG,MIPS use EJTAG。Debug工具一般兩種都支持。使用起來感覺差不多。
6.性能 performance
- 具體性能比較,因為差異性太大,所以很難分出誰好誰壞。從個人經驗來講 MIPS4k和ARM9基本上是同一個級別的,但ARM9性能似乎要比MIPS4K好。
同樣是32bit的MIPS24K性能上比MIPS4K有很大提升,也應該比ARM9要好些。
因為沒有用過ARM11和MIPS34K的芯片,沒法比較,但感覺這兩個似乎是一個級別的。
7.應用
- 在1000MHz以上的應用,很難找到采用ARM架構的產品。
MIPS架構用在200MHz或者是266MHz以下的應用比較少,而這恰恰是ARM的主攻市場。
- ARM 在手機等便攜式領域,MIPS 在住宅網關、線纜調制解調器、線纜機頂盒等
- ARM 采用硬核授權;MIPS 采用軟核授權,用戶可以自己配置,做自己的產品。
8.未來發展
- ARM的下一代走向多內核結構,而MIPS公司的下一代核心則轉向硬件多線程功能(multithreading)
MIPS 的multithreading 很類似Intel 的 HyperThreading技術。從現在的發展來看,多內核占上風。
9.總結
自己感覺ARM和MIPS在一開始的RISC的設計上有很多不同,但隨著技術的發展,各自揚長避短,好的技術大家都會使用。比如ARM11和MIPS R1000就使用了很多一樣的技術。感覺RISC做到了極至就都一樣了。