色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

淺談NorFlash的原理及其應(yīng)用

ss ? 作者:工程師譚軍 ? 2018-10-07 15:12 ? 次閱讀
NOR Flash
NOR Flash是現(xiàn)在市場(chǎng)上兩種主要的非易失閃存技術(shù)之一。Intel于1988年首先開發(fā)出NOR Flash 技術(shù),徹底改變了原先由EPROM(Erasable Programmable Read-Only-Memory電可編程序只讀存儲(chǔ)器)和EEPROM(電可擦只讀存儲(chǔ)器Electrically Erasable Programmable Read - Only Memory)一統(tǒng)天下的局面。緊接著,1989年,東芝公司發(fā)表了NAND Flash 結(jié)構(gòu),強(qiáng)調(diào)降低每比特的成本,有更高的性能,并且像磁盤一樣可以通過接口輕松升級(jí)。NOR Flash 的特點(diǎn)是芯片內(nèi)執(zhí)行(XIP ,eXecute In Place),這樣應(yīng)用程序可以直接在Flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。NOR 的傳輸效率很高,在1~4MB的小容量時(shí)具有很高的成本效益,但是很低的寫入和擦除速度大大影響到它的性能。NAND的結(jié)構(gòu)能提供極高的單元密度,可以達(dá)到高存儲(chǔ)密度,并且寫入和擦除的速度也很快。應(yīng)用NAND的困難在于Flash的管理需要特殊的系統(tǒng)接口。
性能比較
flash閃存是非易失存儲(chǔ)器,可以對(duì)稱為塊的存儲(chǔ)器單元塊進(jìn)行擦寫和再編程。任何flash器件的寫入操作只能在空或已擦除的單元內(nèi)進(jìn)行,所以大多數(shù)情況下,在進(jìn)行寫入操作之前必須先執(zhí)行擦除。NAND器件執(zhí)行擦除操作是十分簡(jiǎn)單的,而NOR則要求在進(jìn)行擦除前先要將目標(biāo)塊內(nèi)所有的位都寫為0。
由于擦除NOR器件時(shí)是以64~128KB的塊進(jìn)行的,執(zhí)行一個(gè)寫入/擦除操作的時(shí)間為5s,與此相反,擦除NAND器件是以8~32KB的塊進(jìn)行的,執(zhí)行相同的操作最多只需要4ms。
執(zhí)行擦除時(shí)塊尺寸的不同進(jìn)一步拉大了NOR和NAND之間的性能差距,統(tǒng)計(jì)表明,對(duì)于給定的一套寫入操作(尤其是更新小文件時(shí)),更多的擦除操作必須在基于NOR的單元中進(jìn)行。這樣,當(dāng)選擇存儲(chǔ)解決方案時(shí),設(shè)計(jì)師必須權(quán)衡以下的各項(xiàng)因素。
l 、NOR的讀速度比NAND稍快一些。
2、 NAND的寫入速度比NOR快很多。
3 、NAND的4ms擦除速度遠(yuǎn)比NOR的5s快。
4 、大多數(shù)寫入操作需要先進(jìn)行擦除操作。
5 、NAND的擦除單元更小,相應(yīng)的擦除電路更少。
此外,NAND的實(shí)際應(yīng)用方式要比NOR復(fù)雜的多。NOR可以直接使用,并可在上面直接運(yùn)行代碼;而NAND需要I/O接口,因此使用時(shí)需要驅(qū)動(dòng)程序。不過當(dāng)今流行的操作系統(tǒng)對(duì)NAND結(jié)構(gòu)的Flash都有支持。此外,Linux內(nèi)核也提供了對(duì)NAND結(jié)構(gòu)的Flash的支持。
詳解
NOR和NAND是現(xiàn)在市場(chǎng)上兩種主要的非易失閃存技術(shù)。Intel于1988年首先開發(fā)出NOR flash技術(shù),徹底改變了原先由EPROM和EEPROM一統(tǒng)天下的局面。緊接著,1989年,東芝公司發(fā)表了NAND flash結(jié)構(gòu),強(qiáng)調(diào)降低每比特的成本,更高的性能,并且象磁盤一樣可以通過接口輕松升級(jí)。但是經(jīng)過了十多年之后,仍然有相當(dāng)多的硬件工程師分不清NOR和NAND閃存。
像“flash存儲(chǔ)器”經(jīng)常可以與相“NOR存儲(chǔ)器”互換使用。許多業(yè)內(nèi)人士也搞不清楚NAND閃存技術(shù)相對(duì)于NOR技術(shù)的優(yōu)越之處,因?yàn)榇蠖鄶?shù)情況下閃存只是用來存儲(chǔ)少量的代碼,這時(shí)NOR閃存更適合一些。而NAND則是高數(shù)據(jù)存儲(chǔ)密度的理想解決方案。
NOR的特點(diǎn)是芯片內(nèi)執(zhí)行(XIP, eXecute In Place),這樣應(yīng)用程序可以直接在flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。NOR的傳輸效率很高,在1~4MB的小容量時(shí)具有很高的成本效益,但是很低的寫入和擦除速度大大影響了它的性能。
NAND結(jié)構(gòu)能提供極高的單元密度,可以達(dá)到高存儲(chǔ)密度,并且寫入和擦除的速度也很快。應(yīng)用NAND的困難在于flash的管理需要特殊的系統(tǒng)接口。
接口差別
NOR flash帶有SRAM接口,有足夠的地址引腳來尋址,可以很容易地存取其內(nèi)部的每一個(gè)字節(jié)。
NAND器件使用復(fù)雜的I/O口來串行地存取數(shù)據(jù),各個(gè)產(chǎn)品廠商的方法可能各不相同。8個(gè)引腳用來傳送控制、地址和數(shù)據(jù)信息。
NAND讀和寫操作采用512字節(jié)的塊,這一點(diǎn)有點(diǎn)像硬盤管理此類操作,很自然地,基于NAND的存儲(chǔ)器就可以取代硬盤或其他塊設(shè)備。
容量成本編輯
NAND flash的單元尺寸幾乎是NOR器件的一半,由于生產(chǎn)過程更為簡(jiǎn)單,NAND結(jié)構(gòu)可以在給定的模具尺寸內(nèi)提供更高的容量,也就相應(yīng)地降低了價(jià)格。
NOR flash占據(jù)了容量為1~16MB閃存市場(chǎng)的大部分,而NAND flash只是用在8~128MB的產(chǎn)品當(dāng)中,這也說明NOR主要應(yīng)用在代碼存儲(chǔ)介質(zhì)中,NAND適合于數(shù)據(jù)存儲(chǔ),NAND在CompactFlash、Secure Digital、PC Cards和MMC(多媒體存儲(chǔ)卡Multi Media Card)存儲(chǔ)卡市場(chǎng)上所占份額最大。
可靠耐用
采用flash介質(zhì)時(shí)一個(gè)需要重點(diǎn)考慮的問題是可靠性。對(duì)于需要擴(kuò)展MTBF(平均故障間隔時(shí)間Mean Time Between Failures)的系統(tǒng)來說,F(xiàn)lash是非常合適的存儲(chǔ)方案??梢詮膲勖陀眯裕?、位交換和壞塊處理三個(gè)方面來比較NOR和NAND的可靠性。
壽命(耐用性)
在NAND閃存中每個(gè)塊的最大擦寫次數(shù)是一百萬(wàn)次,而NOR的擦寫次數(shù)是十萬(wàn)次。NAND存儲(chǔ)器除了具有10比1的塊擦除周期優(yōu)勢(shì),典型的NAND塊尺寸為NOR器件的八分之一,每個(gè)NAND存儲(chǔ)器塊在給定的時(shí)間內(nèi)的刪除次數(shù)要少一些。
.NorFlash簡(jiǎn)單來說與sdram與Nand的中間品,它能像sdram一樣直接讀,但是又得像nand一樣編程擦寫。因此程序可以直接在nor里跑,速度要比sdram慢一些,往nor里寫數(shù)據(jù)必須先擦除,因?yàn)閚or的每一位只能由1變?yōu)?。Nor可讀不可直接寫的特性可以被用來判斷是Nor啟動(dòng)還是nand啟動(dòng),因?yàn)閚and啟動(dòng)的話前4K是可寫的,我們寫入數(shù)據(jù)再讀取出來應(yīng)該是沒有問題的,而nor啟動(dòng)的話,讀出的數(shù)據(jù)必然是錯(cuò)誤的。

NorFlash的硬件接線:

首先,如果做過sdram實(shí)驗(yàn)的朋友應(yīng)該知道,NorFlash與sdram很相似,只不過sdram位寬為32,NOR為16。在硬件連接上,Nor的地址線與cpu的地址線錯(cuò)開1位,sdram錯(cuò)開2位。簡(jiǎn)單分析一下:

32位的CPU地址線為32位,每一個(gè)地址對(duì)應(yīng)1個(gè)byte,地址的步長(zhǎng)為1byte

0x0000 0000 對(duì)應(yīng)第1個(gè)地址空間 大小為1bytes

0x0000 0001 對(duì)應(yīng) 2 大小為1bytes

依次類推。。.

可以理解為cpu的地址類型 為 u8 * addraddr+1 移動(dòng)1個(gè)字節(jié)

32位的sdram,每一個(gè)地址對(duì)應(yīng)于4個(gè)byte,地址步長(zhǎng)為4byte

0x0000 0000 對(duì)應(yīng)第1個(gè)地址空間 大小為4bytes

0x0000 0001 對(duì)應(yīng) 2 大小為4bytes

依次類推。。.

可以理解為sdram的地址類型 為 u32 * addraddr+1 移動(dòng)4個(gè)字節(jié)

16位的nor,每一個(gè)地址對(duì)應(yīng)于2個(gè)byte,地址步長(zhǎng)為2byte

0x0000 0000 對(duì)應(yīng)第1個(gè)地址空間 大小為2bytes

0x0000 0001 對(duì)應(yīng) 2 大小為2bytes

依次類推。。.

可以理解為nor的地址類型 為 u16 * addraddr+1 移動(dòng)2個(gè)字節(jié)

因此,CPU的地址與它們的地址是錯(cuò)位的。

CPU的4個(gè)連續(xù)地址 如 0 1 2 3 均對(duì)應(yīng)于sdram的 0地址

CPU的2個(gè)連續(xù)地址 如 0 1 均對(duì)應(yīng)于nor 的 0地址

假如我想取sdram 0地址的 第二個(gè)byte 地址如何寫?對(duì)于sdram和nor具體的每一個(gè)byte是無法尋址的呀,但是arm有一個(gè)叫存儲(chǔ)管理器的東西,它大概會(huì)幫我們實(shí)現(xiàn)單字節(jié)的讀寫,至于sdram和nor支不支持單字節(jié)讀寫,我們后邊在分析。

NorFlash的軟件設(shè)置:

需要像初始化sdram一樣,設(shè)置Bank寄存器,主要是一些時(shí)序圖的時(shí)間大小。

位寬在BWSCON寄存器中設(shè)置,不過它是由硬件決定的,bank0的位寬,我們撥動(dòng)開關(guān)選擇nor啟動(dòng)還是nand啟動(dòng)的時(shí)候,它就已經(jīng)確定了。

NorFlash信息:

我這款Nor大小為2M,32個(gè)Block,每個(gè)block分為16個(gè)sector,一個(gè)sector為4K,具體信息如下圖。

NorFlash寫、擦除、讀芯片ID:

Nor可以像sdram一樣直接讀取,對(duì)于其它的操作,例如寫、擦除、讀信息等需要寫特定的Date到特定的Addr。

這里尤其需要注意的是,Addr指的是nor地址線上看到的地址,相對(duì)于cpu也就是我們寫程序的時(shí)候,需要將addr《《1,這樣cpu錯(cuò)位的地址線發(fā)出的地址正好對(duì)上nor需求的地址。

對(duì)于擦除操作,nor支持按block、sector或者整片的擦除,整個(gè)擦除需要6個(gè)周期,以按sector擦除為例,前五個(gè)周期為往XXX里寫XXX,最后一個(gè)周期將0X30寫入要擦除的sector對(duì)應(yīng)的首地址即可。

對(duì)于寫操作,需要4個(gè)周期,前3個(gè)周期往XXX里寫XXX,最后一個(gè)周期將Data寫入addr,這里需要注意的是addr必須是半字對(duì)齊,data也要求為16bit。

對(duì)于讀取信息的操作,主要是讀ID的操作,前3個(gè)周期往XXX里寫XXX,第四個(gè)周期去讀特定的地址,對(duì)于DeviceID來說,A1-A19=0,A0=1,對(duì)于CPU來說就是0x1《《1.

NorFlash的等待:

NorFlash有三種方式,1中讀硬件引腳,另外兩種讀地址線,主要用讀地址線的兩種方式。

1、Toggle

連續(xù)讀兩次相同地址的數(shù)據(jù),看DQ6是否相等,相等則擦除或?qū)懲瓿?/p>

2、polling

讀數(shù)據(jù),看DQ7是否正確,正確則擦除完成。如果擦除的話DQ7應(yīng)該等于1,寫操作的話,對(duì)比數(shù)據(jù)的第7位。

還有,很重要的一點(diǎn):

經(jīng)過我的測(cè)試,sdram的單字節(jié)讀取沒有問題,但是Nor單字節(jié)讀取的時(shí)候,讀出的數(shù)據(jù)并不正確。比如我在0x00地址處寫入了0xff11,單字節(jié)讀取0x0理論上應(yīng)該得到0x11,而我在實(shí)際實(shí)驗(yàn)的時(shí)候得到的卻是0xff。也就是說nor在存儲(chǔ)半字?jǐn)?shù)據(jù)的時(shí)候高8位于低8位互換了。

[cpp] view plain copy

#include “uart.h”

#define MAIN_SECT_SIZE (4*1024) /* 4 KB */

#define CMD_UNLOCK1 0x000000AA

#define CMD_UNLOCK2 0x00000055

#define CMD_ERASE_SETUP 0x00000080

#define CMD_ERASE_CONFIRM 0x00000030

#define CMD_PROGRAM 0x000000A0

#define MEM_FLASH_ADDR1 (*(volatile U16 *)(0x000005555 《《 1))

#define MEM_FLASH_ADDR2 (*(volatile U16 *)(0x000002AAA 《《 1))

#define U16 unsigned short

#define U32 unsigned long

#define U8 unsigned char

int write_hword (U32 dest, U16 data);

typedef struct {

U32 size; /* total bank size in bytes */

U16 sector_count; /* number of erase units */

U32 flash_id; /* combined device & manufacturer code */

U32 start[512]; /* physical sector start addresses */

} flash_info_t;

/*-----------------------------------------------------------------------*/

void flash_id(){

MEM_FLASH_ADDR1 = CMD_UNLOCK1;

MEM_FLASH_ADDR2 = CMD_UNLOCK2;

MEM_FLASH_ADDR1 = 0x00000090;

print(“Manufacturer ID :%x\r\n”,*((U16 *)0x00));

MEM_FLASH_ADDR1 = CMD_UNLOCK1;

MEM_FLASH_ADDR2 = CMD_UNLOCK2;

MEM_FLASH_ADDR1 = 0x00000090;

print(“Device ID :%x\r\n”,*((U16 *)(0x01《《1)));

}

void flash_init () //計(jì)算總大小,每個(gè)sector的起始地址

{

flash_id();

//print(“flash init OK\r\n”);

print(“*((U32 *)0x32000000) = 0x00001100\r\n”);

*((U32 *)0x32000000) = 0x00001100;

print(“U8 0x32000001 == %x\r\n”,*((U8 *)0x32000001));

*((U8 *)0x32000003) = 0xff;

print(“*((U8 *)0x32000003) = 0xff\r\n”);

print(“now the U32 0x32000000 should be 0xff001100\r\n”);

print(“U32 0x32000000 = %x\r\n”,*((U32 *)0x32000000));

print(“U8 0x32000000 = %x\r\n”,*((U8 *)0x32000000));

print(“U8 0x32000001 = %x\r\n”,*((U8 *)0x32000001));

print(“U8 0x32000002 = %x\r\n”,*((U8 *)0x32000002));

print(“U8 0x32000003 = %x\r\n”,*((U8 *)0x32000003));

if(flash_erase(0,1) == 0)

print(“erase OK\r\n”);

U32 a = 0x00001c15;

U16 b = 0x11ff;

write_hword(a,b);

print(“*(U32 *0x00001c15) == 0x11ff\r\n”);

print(“U8 0x1c15 = %x\r\n”,*((U8 *)0x1c15));

print(“U8 0x1c16 = %x\r\n”,*((U8 *)0x1c16));

print(“U16 0x1c15 = %x\r\n”,*((U16 *)0x1c15));

if(write_buff((1024*20),0,(7*1024)) == 0)

print(“write OK\r\n”);

}

int flash_erase (int s_first, int s_last)

{

int i,j;

U32 size = 0;

flash_info_t flash_info;

for (i = 0; i 《 1; i++) {

U32 flashbase = 0;

flash_info.size = 2*1024*1024;

flash_info.sector_count = 512;

flashbase = 0;

for (j = 0; j 《 flash_info.sector_count; j++) {

flash_info.start[j] =

flashbase + (j) * MAIN_SECT_SIZE;

//print(“%d \t:%d\r\n”,j,flash_info.start[j]);

}

}

int sect;

unsigned short temp;

/* Start erase on unprotected sectors */

for (sect = s_first; sect 《= s_last; sect++) {

print (“Erasing sector %d 。。. \r\n”, sect+1);

volatile U16 * addr = (volatile U16 *)(flash_info.start[sect]);

MEM_FLASH_ADDR1 = CMD_UNLOCK1;

MEM_FLASH_ADDR2 = CMD_UNLOCK2;

MEM_FLASH_ADDR1 = CMD_ERASE_SETUP;

MEM_FLASH_ADDR1 = CMD_UNLOCK1;

MEM_FLASH_ADDR2 = CMD_UNLOCK2;

*addr = CMD_ERASE_CONFIRM;

print(“wait\r\n”);

while(1){

temp = (*addr) & 0x40; // 0100 0000 DQ6

if(temp != (*addr) & 0x40) //DQ6

continue;

if(*addr & 0x80) //dq7 ==1

break;

}

}

return 0;

}

//寫16位數(shù)據(jù),地址應(yīng)該是16位對(duì)齊的。

int write_hword (U32 dest, U16 data)

{

//print(“now to write %d\r\n”,dest);

int rc;

volatile U16 *addr = (volatile U16 *)dest;

U16 result;

//Check if Flash is (sufficiently) erased

result = *addr;

if ((result & data) != data)

return 1;

MEM_FLASH_ADDR1 = CMD_UNLOCK1;

MEM_FLASH_ADDR2 = CMD_UNLOCK2;

MEM_FLASH_ADDR1 = CMD_PROGRAM;

*addr = data;

while(1){

unsigned short i = *addr & 0x40;

if(i != (*addr & 0x40)) //D6 == D6

continue;

if((*addr & 0x80) == (data & 0x80)){

rc = 0;

break; //D7 == D7

}

}

//print(“write %d OK\r\n”,dest);

return rc;

}

int write_buff (U32 src, U32 addr, U32 len)

{

int rc;

U16 data; //16Bit?

if(addr % 2){

print(“addr is not for 16bit align\n”);

return 1;

}

while (len 》= 2) {

data = *((volatile U16 *) src);

if ((rc = write_hword (addr, data)) != 0) {

return (rc);

}

src += 2;

addr += 2;

len -= 2;

}

return 0;

}


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1641

    瀏覽量

    148347
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7522

    瀏覽量

    164108
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    NorFlash與NandFlash對(duì)比

    本帖最后由 ORCAD__PCB 于 2012-8-9 14:24 編輯 NorFlash與NandFlash對(duì)比
    發(fā)表于 08-09 14:22

    淺談認(rèn)知無線電關(guān)鍵技術(shù)及其在煤礦通信中的應(yīng)用

    淺談認(rèn)知無線電關(guān)鍵技術(shù)及其在煤礦通信中的應(yīng)用
    發(fā)表于 03-16 16:06

    arm 裸機(jī) norflash

    想法是這樣的,利用norflash中未用的sector保存運(yùn)行數(shù)據(jù)。實(shí)驗(yàn):1、芯片:s3c2440,norflash:en29lv160ab。裸機(jī)程序在ADS1.2中編譯,完成讀取ID,擦除,寫,讀
    發(fā)表于 03-09 16:30

    請(qǐng)問把uImage燒到norflash的命令是什么?

    我的nandflash已經(jīng)壞了,只有norflash可以進(jìn)入u-boot, 以前老師視頻里面的,方法都是 把uImage燒到 nandfalsh里面的,但是我現(xiàn)在的nandflash已經(jīng)壞了,我想請(qǐng)問,把uImage燒到 norflash的命令是什么呀?
    發(fā)表于 09-19 03:11

    淺談Keil-MDK創(chuàng)建及其編譯過程

    淺談Keil-MDK創(chuàng)建項(xiàng)目&編譯過程---Code-data,RO-data,RW-data,ZI-data一、編譯過程二、MDK 編譯工具(1)創(chuàng)建一個(gè)新的工程(2)添加 startup
    發(fā)表于 02-24 06:03

    淺談待機(jī)能耗問題及其電源解決方案

    淺談待機(jī)能耗問題及其電源解決方案:隨著家用電器、視聽產(chǎn)品的普及,辦公自動(dòng)化的廣泛應(yīng)用和網(wǎng)絡(luò)化的不斷發(fā)展,越來越多的產(chǎn)品具有了待機(jī)功能,例如電池充電、遙控、數(shù)字
    發(fā)表于 10-29 15:34 ?19次下載

    數(shù)字電視及其測(cè)量淺談

    數(shù)字電視及其測(cè)量淺談 摘要:本文在介紹數(shù)字電視基本概念和背景的前提下,介紹了數(shù)字電視測(cè)試的主要參數(shù)和主要儀器,并介紹數(shù)字電
    發(fā)表于 11-27 07:45 ?969次閱讀
    數(shù)字電視<b class='flag-5'>及其</b>測(cè)量<b class='flag-5'>淺談</b>

    淺談WiMax技術(shù)及其應(yīng)用前景

    淺談WiMax技術(shù)及其應(yīng)用前景 WiMax技術(shù)概述 寬帶無線接入技術(shù)作為下一代通信網(wǎng)中最具發(fā)展
    發(fā)表于 05-21 01:19 ?896次閱讀

    淺談PLC控制系統(tǒng)設(shè)計(jì)要點(diǎn)及其在使用中的問題

    淺談PLC控制系統(tǒng)設(shè)計(jì)要點(diǎn)及其在使用中的問題 PLC是工業(yè)自動(dòng)化的基礎(chǔ)平臺(tái)。PLC應(yīng)用系統(tǒng)設(shè)計(jì)的首要問題是工程選型與編程平臺(tái)的架構(gòu)設(shè)
    發(fā)表于 06-16 13:47 ?685次閱讀

    淺談有線網(wǎng)絡(luò)基礎(chǔ)上的無線規(guī)劃及其管理

    淺談有線網(wǎng)絡(luò)基礎(chǔ)上的無線規(guī)劃及其管理  如今,企業(yè)的新業(yè)務(wù)和新應(yīng)用對(duì)于無線網(wǎng)絡(luò)帶來的移動(dòng)性需求十分迫切。然而,如何能在原有的網(wǎng)絡(luò)基礎(chǔ)上更好地添加無線
    發(fā)表于 02-22 09:26 ?837次閱讀

    EDGE演進(jìn)及其測(cè)量技術(shù)

    淺談EDGE演進(jìn)及其測(cè)量
    發(fā)表于 03-30 17:25 ?927次閱讀
    EDGE演進(jìn)<b class='flag-5'>及其</b>測(cè)量技術(shù)

    淺談同步電動(dòng)機(jī)噪聲及其抑制方法

    淺談同步電動(dòng)機(jī)噪聲及其抑制方法_蘇國(guó)霞
    發(fā)表于 01-02 16:09 ?2次下載

    微雪電子NorFlash S29GL128P簡(jiǎn)介

    NorFlash S29GL128P 外擴(kuò)存儲(chǔ)模塊 容量128M Bit 可直接接入帶有32I/Os接口的Open系列開發(fā)板 型號(hào) NorFlash Board (B)
    的頭像 發(fā)表于 12-30 09:31 ?2960次閱讀
    微雪電子<b class='flag-5'>NorFlash</b> S29GL128P簡(jiǎn)介

    STM32F1_ 外部NorFlash存儲(chǔ)程序代碼

    STM32F1_外部NorFlash存儲(chǔ)程序代碼
    的頭像 發(fā)表于 04-08 09:55 ?4401次閱讀
    STM32F1_ 外部<b class='flag-5'>NorFlash</b>存儲(chǔ)程序代碼

    基于硬件損耗均衡算法的片上norflash控制器設(shè)計(jì)

    基于硬件損耗均衡算法的片上norflash控制器設(shè)計(jì)(嵌入式開發(fā)產(chǎn)品)-該文檔為基于硬件損耗均衡算法的片上norflash控制器設(shè)計(jì)講解文檔,是一份很不錯(cuò)的參考資料,具有較高參考價(jià)值,感興趣的可以下載看看………………
    發(fā)表于 07-30 15:41 ?9次下載
    基于硬件損耗均衡算法的片上<b class='flag-5'>norflash</b>控制器設(shè)計(jì)
    主站蜘蛛池模板: 老师给美女同学开嫩苞| 欧美激情久久久久久久大片| 国产人妻人伦精品无码.麻豆| 国产成人在线播放| 国产欧美日韩国产高清| 国产亚洲精品字幕在线观看| 国产小视频免费看| 精品视频在线播放| 久久这里的只有是精品23| 暖暖 视频 在线 观看 高清 | 99久久精品国产一区二区三区| 99久久免费精品国产免费| 北条麻妃快播| 国产人妻精品久久久久久很牛| 精品一产品大全| 女人一级毛片免费视频观看| 少妇仑乱A毛片| 亚洲精品视频在线播放| 777久久人妻少妇嫩草AV蜜桃| 成人毛片100部免费看| 国产午夜电影在线观看不卡| 巨黄的肉辣文np| 日韩欧美精品有码在线播放| 亚洲AV久久久噜噜噜噜| 在线免费视频a| 阿v天堂2017在无码| 国产亚洲精品品视频在线| 邻居的阿2中文字版电影| 日本三级黄色大片| 亚洲青青青网伊人精品| 99热最新在线| 国产麻豆AV伦| 美女MM131爽爽爽| 涩涩伊人久久无码欧美| 伊人草久久| 成人在线视频免费观看| 精品视频在线播放| 日本无码专区亚洲麻豆 | 脔到她哭H粗话HWWW男男动漫| 日本日本熟妇中文在线视频| 亚洲欧美一区二区三区久久|