烽火眾智DSP工程師筆試經(jīng)驗(yàn)
我筆試的是DSP工程師。卷子只有一張紙,正反兩頁。一共10道題。答案作答在給的空白的紙上。
1.定點(diǎn)DSP芯片和浮點(diǎn)DSP芯片是什么?有什么優(yōu)缺點(diǎn)?
定點(diǎn)DSP和浮點(diǎn)DSP主要是按DSP工作時(shí)的數(shù)據(jù)格式來區(qū)分的。數(shù)據(jù)以定點(diǎn)格式工作的DSP是定點(diǎn)DSP,數(shù)據(jù)以浮點(diǎn)格式工作的DSP是浮點(diǎn)DSP。浮點(diǎn)DSP能進(jìn)行浮點(diǎn)運(yùn)算,一次完成,由硬件實(shí)現(xiàn)。定點(diǎn)DSP無法直接進(jìn)行浮點(diǎn)運(yùn)算,完成浮點(diǎn)運(yùn)算需要借助程序來實(shí)現(xiàn)。
優(yōu)點(diǎn):浮點(diǎn)DSP比定點(diǎn)DSP 的運(yùn)算范圍要大。浮點(diǎn)DSP 的尋址范圍也大些。浮點(diǎn)DSP的精度大些。浮點(diǎn)運(yùn)算速度大。
缺點(diǎn):定點(diǎn)DSP需要時(shí)刻注意運(yùn)算的溢出。精度不夠,定點(diǎn)DSP運(yùn)算速度慢。
2.DSP和通用CPU的最大區(qū)別是什么?有什么共同點(diǎn)?
(1)首先是體系結(jié)構(gòu):CPU是馮.諾伊曼結(jié)構(gòu)的,而DSP有分開的代碼和數(shù)據(jù)總線即“哈佛結(jié)構(gòu)”。
(2) 標(biāo)準(zhǔn)化和通用性:CPU的標(biāo)準(zhǔn)化和通用性做得很好,支持操作系統(tǒng),所以以CPU為核心的系統(tǒng)方便人機(jī)交互以及和標(biāo)準(zhǔn)接口設(shè)備通信,非常方便而且不需要硬件開發(fā)了;但這也使得CPU外設(shè)接口電路比較復(fù)雜,DSP主要還是用來開發(fā)嵌入式的信號(hào)處理系統(tǒng)了,不強(qiáng)調(diào)人機(jī)交互,一般不需要很多通信接口,因此結(jié)構(gòu)也較為簡單,便于開發(fā)。如果只是著眼于嵌入式應(yīng)用的話,嵌入式CPU和DSP的區(qū)別應(yīng)該只在于一個(gè)偏重控制一個(gè)偏重運(yùn)算了。
(3)流水線結(jié)構(gòu):大多數(shù)DSP都擁有流水結(jié)構(gòu),即每條指令都由片內(nèi)多個(gè)功能單元分別完成取指、譯碼、取數(shù)、執(zhí)行等步驟,這樣可以大大提高系統(tǒng)的執(zhí)行效率。但流水線的采用也增加了軟件設(shè)計(jì)的難度,要求設(shè)計(jì)者在程序設(shè)計(jì)中考慮流水的需要。
快速乘法器:信號(hào)處理算法往往大量用到乘加(multiply-accumulate,MAC)運(yùn)算。DSP有專用的硬件乘法器,它可以在一個(gè)時(shí)鐘周期內(nèi)完成MAC運(yùn)算。硬件乘法器占用了DSP芯片面積的很大一部分。(與之相反,通用CPU采用一種較慢的、迭代的乘法技術(shù),它可以在多個(gè)時(shí)鐘周期內(nèi)完成一次乘法運(yùn)算,但是占用了較少了硅片資源)。
地址發(fā)生器:DSP有專用的硬件地址發(fā)生單元,這樣它可以支持許多信號(hào)處理算法所要求的特定數(shù)據(jù)地址模式。這包括前(后)增(減)、環(huán)狀數(shù)據(jù)緩沖的模地址以及FFT的比特倒置地址。地址發(fā)生器單元與主ALU和乘法器并行工作,這就進(jìn)一步增加了DSP可以在一個(gè)時(shí)鐘周期內(nèi)可以完成的工作量。
硬件輔助循環(huán):信號(hào)處理算法常常需要執(zhí)行緊密的指令循環(huán)。對硬件輔助循環(huán)的支持,可以讓DSP高效的循環(huán)執(zhí)行代碼塊而無需讓流水線停轉(zhuǎn)或者讓軟件來測試循環(huán)終止條件。
3.占先式系統(tǒng)和非占先式系統(tǒng)有什么區(qū)別?DSP/BIOS 和ucOSⅡ是哪一種?
占先式,當(dāng)前任務(wù)運(yùn)行中如果有優(yōu)先級更高的任務(wù)進(jìn)入就緒態(tài),當(dāng)前任務(wù)立即將CPU交給優(yōu)先級更高的'任務(wù)。
非占先式:等當(dāng)前任務(wù)執(zhí)行完后再交給優(yōu)先級更高的任務(wù)。
DSP/BIOS,ucOSII是占先式的操作系統(tǒng)。
4.說一下對DSP MAP的認(rèn)識(shí)。
MAP文件是CCS軟件編譯后產(chǎn)生的有關(guān)DSP用到所有程序、數(shù)據(jù)及IO空間的一種映射文件。
一、生成方法
MAP文件主要有兩種生成方法,一種是由系統(tǒng)自動(dòng)生成,默認(rèn)文件名為所建立的項(xiàng)目名(如XXX為項(xiàng)目名)加上.map后綴xxx.map,另一種在CMD文件中指定生成MAP文件,操作方法為在MEMORY指令前面加上“-m abc.map”,文件名可以任意。
二、文件格式
MAP文件大概分為文件頭、內(nèi)存配置、段映射、全局符號(hào)四部分。內(nèi)存配置與CMD文件中的MEMORY指令關(guān)聯(lián),在CMD文件中定義的程序與數(shù)據(jù)區(qū)間定義,在該部分均可以找到對應(yīng),與CMD文件不同的時(shí),在MAP文件中加入了一個(gè)實(shí)際使用的區(qū)間,即在程序中實(shí)際用到的空間長度。段映射部分與CMD文件中的SECTION指令關(guān)聯(lián),在該部分程序中所有的段實(shí)際映射的起始地址與實(shí)際長度均有詳細(xì)說明。可以具體到程序中PROGMA指定的段和各個(gè)單獨(dú)文件產(chǎn)生的OBJ文件。全局符號(hào)可以是程序使用的每一個(gè)函數(shù)、程序中定義的全局變量均可以在此找到對應(yīng)的起始地址。MAP文件中采用兩種方式列舉,一種為按相應(yīng)地址排列,另一種按全局符號(hào)字母排列。
5.簡單的程序題?闯绦,寫出輸出見過,用C寫的。
6. -7和10的16位二進(jìn)制補(bǔ)碼是什么? 寫出Q15 0.25和Q15 0.5
⑴正數(shù)的補(bǔ)碼 與原碼相同。
⑵負(fù)數(shù)的補(bǔ)碼 負(fù)數(shù)的補(bǔ)碼是對其原碼逐位取反,但符號(hào)位除外;然后整個(gè)數(shù)加1。
-7轉(zhuǎn)換成二進(jìn)制原碼是1000000000000111,反碼是1111111111111000,補(bǔ)碼是反碼+1=1111111111111001
10的二進(jìn)制原碼是0000000000001010,是正數(shù),補(bǔ)碼和原碼一樣
DSP芯片的數(shù)以2的補(bǔ)碼形式表示。每個(gè)16位數(shù)用一個(gè)符號(hào)位來表示數(shù)的正負(fù),0表示數(shù)值為正,l則表示數(shù)值為負(fù)。其余15位表示數(shù)值的大小。
如,二進(jìn)制數(shù)0010000000000011b=8195
二進(jìn)制數(shù)1111111111111100b= -4
數(shù)的定標(biāo)有Q表示法和S表示法兩種。
不同的Q所表示的數(shù)不僅范圍不同,而且精度也不相同。Q越大,數(shù)值范圍越小,但精度越高;
如,16進(jìn)制數(shù)2000H=8192,用Q0表示
16進(jìn)制數(shù)2000H=0.25,用Q15表示
7.說一下DSP開發(fā)的主要步驟。
8.寫出strcpy的函數(shù)原型。
char* strcpy(char *strDest,const char * strSrc)
{
}
9.寫出創(chuàng)建單鏈表的函數(shù)。
struct stu_info{
int x;
struct stu_info *next;
};
void inputstuinfo(struct stu_info**head,int n)
{
}
10. 對一個(gè)字符串進(jìn)行重新排列,使字母在前,數(shù)字在后,并且字母和數(shù)字的相對位置不變。
include
include
include
函數(shù)名:fun
參數(shù): char*s,int *m
函數(shù)返回值:chLetter(數(shù)組chLetter[N]的數(shù)組名)
局部變量:char chLetter[N]; char chNumber[N]; int i,j,k;
char *fun(char*s,int *m)
{
}
【烽火眾智DSP工程師筆試經(jīng)驗(yàn)】相關(guān)文章:
網(wǎng)絡(luò)工程師筆試經(jīng)驗(yàn)07-15
筆試經(jīng)驗(yàn):筆試內(nèi)容準(zhǔn)備09-02
故宮筆試經(jīng)驗(yàn)05-07
長虹筆試經(jīng)驗(yàn)04-27
銀監(jiān)會(huì)筆試經(jīng)驗(yàn)04-24
招商筆試經(jīng)驗(yàn)04-24
微軟筆試經(jīng)驗(yàn)03-01
求職筆試經(jīng)驗(yàn)03-01