fpga fifo和pingpong有什么不同
fifo是先進(jìn)先出寄存器,主要用于用于數(shù)據(jù)緩沖,一般是快速設(shè)備和慢速設(shè)備接口之間用
pingpong就是著名的乒乓,用于用慢速設(shè)備處理高速數(shù)據(jù),里面的數(shù)據(jù)緩沖就用的fifo(思想),他有多個(gè)fifo,這樣就能從宏觀上看就相當(dāng)于將高速數(shù)據(jù)分頻了,然后每個(gè)低速時(shí)鐘同時(shí)處理,處理完后有匯集起來(lái),變成高速數(shù)據(jù),這是面積換速度的一個(gè)體現(xiàn),跟流水線有點(diǎn)異曲同工之妙
其實(shí)思想都差不多,都是先將數(shù)據(jù)存起來(lái),有高速時(shí)鐘將數(shù)據(jù)存起來(lái),然后又低速時(shí)鐘來(lái)慢慢處理,每一個(gè)處理的數(shù)據(jù)又送到另一組存儲(chǔ)器里,有高速設(shè)備調(diào)用
stm32怎么判斷是f1還是f4
F1采用CrotexM3內(nèi)核,F(xiàn)4采用CrotexM4內(nèi)核。
F1最高主頻72MHz,F(xiàn)4最高主頻168MHz。
F4具有單精度浮點(diǎn)運(yùn)算單元,F(xiàn)1沒(méi)有浮點(diǎn)運(yùn)算單元。
F4的具備增強(qiáng)的DSP指令集。F4的執(zhí)行16位DSP指令的時(shí)間只有F1的30%~70%。F4執(zhí)行32位DSP指令的時(shí)間只有F1的25%~60%。
F1內(nèi)部SRAM最大64K字節(jié),F(xiàn)4內(nèi)部SRAM有192K字節(jié)(112K+64K+16K)。
F4有備份域SRAM(通過(guò)Vbat供電保持?jǐn)?shù)據(jù)),F(xiàn)1沒(méi)有備份域SRAM。
F4從內(nèi)部SRAM和外部FSMC存儲(chǔ)器執(zhí)行程序的速度比F1快很多。F1的指令總線I-Bus只接到Flash上,從SRAM和FSMC取指令只能通過(guò)S-Bus,速度較慢。F4的I-Bus不但連接到Flash上,而且還連接到SRAM和FSMC上,從而加快從SRAM或FSMC取指令的速度。
F1最大封裝為144腳,可提供112個(gè)GPIO;F4最大封裝有176腳,可提供140個(gè)GPIO。
F1的GPIO的內(nèi)部上下拉電阻配置僅僅針對(duì)輸入模式有用,輸出時(shí)無(wú)效。而F4的GPIO在設(shè)置為輸出模式時(shí),上下拉電阻的配置依然有效。即F4可以配置為開(kāi)漏輸出,內(nèi)部上拉電阻使能,而F1不行。
F4的GPIO最高翻轉(zhuǎn)速度為84MHz,F(xiàn)1最大翻轉(zhuǎn)速度只有18MHz。
F1最多可提供5個(gè)UART串口,F(xiàn)4最多可以提供6個(gè)UART串口。
F1可提供2個(gè)I2C接口,F(xiàn)4可以提供3個(gè)I2C接口。
F1和F4都具有3個(gè)12位的獨(dú)立ADC,F(xiàn)1可提供21個(gè)輸入通道,F(xiàn)4可以提供24個(gè)輸入通道。F1的ADC最大采樣頻率為1Msps,2路交替采樣可到2Msps(F1不支持3路交替采樣)。F4的ADC最大采樣頻率為2.4Msps,3路交替采樣可到7.2Msps。
F1只有12個(gè)DMA通道,F(xiàn)4有16個(gè)DMA通道。F4的每個(gè)DMA通道有4*32位FIFO,F(xiàn)1沒(méi)有FIFO。
F1的SPI時(shí)鐘最高速度為18MHz,F(xiàn)4可以到37.5MHz。
F1沒(méi)有獨(dú)立的32位定時(shí)器(32位需要級(jí)聯(lián)實(shí)現(xiàn)),F(xiàn)4的TIM2和TIM5具有32位上下計(jì)數(shù)功能。
F1和F4都有2個(gè)I2S接口,但是F1的I2S只支持半雙工(同一時(shí)刻要么放音,要么錄音),而F4的I2S支持全雙工,放音和錄音可以同時(shí)進(jìn)行。
作為CortexM3市場(chǎng)的最大占有者,ST公司在2011年又推出基于CortexM4內(nèi)核的STM32F4系列產(chǎn)品,相對(duì)與STM32F1/F2等CortexM3產(chǎn)品,STM32F4最大的優(yōu)勢(shì),就是新增了硬件FPU單元以及DSP指令,同時(shí),STM32F4的主頻也提高了很多,達(dá)到168Mhz(可獲得210DMIPS的處理能力),這使得STM32F4尤其適用于需要浮點(diǎn)運(yùn)算或DSP處理的應(yīng)用,也被稱之為:DSC,具有非常廣泛的應(yīng)用前景。
STM32F4相對(duì)于STM32F1,主要優(yōu)勢(shì)如下:
1,更先進(jìn)的內(nèi)核。STM32F4采用CortexM4內(nèi)核,帶FPU和DSP指令集,而STM32F1采用的是CortexM3內(nèi)核,不帶FPU和DSP指令集。
2,更多的資源。STM32F4擁有多達(dá)192KB的片內(nèi)SRAM,帶攝像頭接口(DCMI)、加密處理器(CRYP)、USB高速OTG、真隨機(jī)數(shù)發(fā)生器、OTP存儲(chǔ)器等。
3,增強(qiáng)的外設(shè)功能。對(duì)于相同的外設(shè)部分,STM32F4具有更快的模數(shù)轉(zhuǎn)換速度、更低的ADC/DAC工作電壓、32位定時(shí)器、帶日歷功能的實(shí)時(shí)時(shí)鐘(RTC)、IO復(fù)用功能大大增強(qiáng)、4K字節(jié)的電池備份SRAM以及更快的USART和SPI通信速度。
4,更高的性能。STM32F4最高運(yùn)行頻率可達(dá)168Mhz,而STM32F1只能到72Mhz;STM32F4擁有ART自適應(yīng)實(shí)時(shí)加速器,可以達(dá)到相當(dāng)于FLASH零等待周期的性能,STM32F1則需要等待周期;STM32F4的FSMC采用32位多重AHB總線矩陣,相比STM32F1總線訪問(wèn)速度明顯提高。
5,更低的功耗。STM32F40x的功耗為:238uA/Mhz,其中低功耗版本的STM32F401更是低到:140uA/Mhz,而STM32F1則高達(dá)421uA/Mhz。
stmf1 crl和stmf4
STM32F1和STM32F4區(qū)別
F1采用CrotexM3內(nèi)核,F(xiàn)4采用CrotexM4內(nèi)核。
F1最高主頻72MHz,F(xiàn)4最高主頻168MHz。
F4具有單精度浮點(diǎn)運(yùn)算單元,F(xiàn)1沒(méi)有浮點(diǎn)運(yùn)算單元。
F4的具備增強(qiáng)的DSP指令集。F4的執(zhí)行16位DSP指令的時(shí)間只有F1的30%~70%。F4執(zhí)行32位DSP指令的時(shí)間只有F1的25%~60%。
F1內(nèi)部SRAM最大64K字節(jié),F(xiàn)4內(nèi)部SRAM有192K字節(jié)(112K+64K+16K)。
F4有備份域SRAM(通過(guò)Vbat供電保持?jǐn)?shù)據(jù)),F(xiàn)1沒(méi)有備份域SRAM。
F4從內(nèi)部SRAM和外部FSMC存儲(chǔ)器執(zhí)行程序的速度比F1快很多。F1的指令總線I-Bus只接到Flash上,從SRAM和FSMC取指令只能通過(guò)S-Bus,速度較慢。F4的I-Bus不但連接到Flash上,而且還連接到SRAM和FSMC上,從而加快從SRAM或FSMC取指令的速度。
F1最大封裝為144腳,可提供112個(gè)GPIO;F4最大封裝有176腳,可提供140個(gè)GPIO。
F1的GPIO的內(nèi)部上下拉電阻配置僅僅針對(duì)輸入模式有用,輸出時(shí)無(wú)效。而F4的GPIO在設(shè)置為輸出模式時(shí),上下拉電阻的配置依然有效。即F4可以配置為開(kāi)漏輸出,內(nèi)部上拉電阻使能,而F1不行。
F4的GPIO最高翻轉(zhuǎn)速度為84MHz,F(xiàn)1最大翻轉(zhuǎn)速度只有18MHz。
F1最多可提供5個(gè)UART串口,F(xiàn)4最多可以提供6個(gè)UART串口。
F1可提供2個(gè)I2C接口,F(xiàn)4可以提供3個(gè)I2C接口。
F1和F4都具有3個(gè)12位的獨(dú)立ADC,F(xiàn)1可提供21個(gè)輸入通道,F(xiàn)4可以提供24個(gè)輸入通道。F1的ADC最大采樣頻率為1Msps,2路交替采樣可到2Msps(F1不支持3路交替采樣)。F4的ADC最大采樣頻率為2.4Msps,3路交替采樣可到7.2Msps。
F1只有12個(gè)DMA通道,F(xiàn)4有16個(gè)DMA通道。F4的每個(gè)DMA通道有4*32位FIFO,F(xiàn)1沒(méi)有FIFO。
F1的SPI時(shí)鐘最高速度為18MHz,F(xiàn)4可以到37.5MHz。
F1沒(méi)有獨(dú)立的32位定時(shí)器(32位需要級(jí)聯(lián)實(shí)現(xiàn)),F(xiàn)4的TIM2和TIM5具有32位上下計(jì)數(shù)功能。
F1和F4都有2個(gè)I2S接口,但是F1的I2S只支持半雙工(同一時(shí)刻要么放音,要么錄音),而F4的I2S支持全雙工,放音和錄音可以同時(shí)進(jìn)行