Misingi ya Kuchagua Wasindikaji wa Mawimbi ya Dijiti

Juni 27, 2017 saa 12:27 jioni

Multi-msingi DSP TMS320C6678. Muhtasari wa Usanifu wa Kichakataji

  • Programu ya Microcontroller

Makala haya yanafungua mfululizo wa machapisho yaliyotolewa kwa vichakataji vya mawimbi mbalimbali ya msingi ya TMS320C6678. Nakala hiyo inatoa wazo la jumla la usanifu wa processor. Nakala hii inaonyesha mihadhara na nyenzo za vitendo zinazotolewa kwa wanafunzi kama sehemu ya kozi za mafunzo ya hali ya juu chini ya mpango wa "Vichakataji vya mawimbi mengi ya msingi ya dijiti C66x kutoka Vyombo vya Texas", iliyoendeshwa katika Chuo Kikuu cha Uhandisi cha Jimbo la Ryazan.

Vichakataji vya mawimbi ya dijiti vya TMS320C66xx vinatokana na usanifu wa KeyStone na ni vichakataji vya utendakazi wa hali ya juu vya mawimbi ya msingi ambavyo vinafanya kazi kwa sehemu isiyobadilika na inayoelea. Usanifu wa KeyStone ni kanuni ya utengenezaji wa mifumo ya msingi nyingi kwenye chip, iliyotengenezwa na Texas Instruments, ambayo inaruhusu kuandaa operesheni ya pamoja ya idadi kubwa ya cores za DSP na RISC, vichapuzi na vifaa vya pembeni, kuhakikisha upitishaji wa kutosha wa ndani na nje. njia za kuhamisha data, ambazo msingi wake ni vipengele vya maunzi: Multicore Navigator (kidhibiti cha kubadilishana data juu ya miingiliano ya ndani), TeraNet (basi ya ndani ya kuhamisha data), Kidhibiti cha Kumbukumbu ya Pamoja ya Multicore (kidhibiti cha ufikiaji wa kumbukumbu iliyoshirikiwa) na HyperLink (kiolesura chenye vifaa vya nje kimewashwa. - kasi ya chip).

Usanifu wa kichakataji TMS320C6678, kichakataji chenye utendaji wa juu zaidi katika familia ya TMS320C66xx, umeonyeshwa kwenye Mchoro 1. Usanifu unaweza kugawanywa katika vipengele vikuu vifuatavyo:

  • seti ya kernels za uendeshaji (CorePack);
  • mfumo mdogo wa kufanya kazi na kumbukumbu iliyoshirikiwa ya ndani na nje (Mfumo mdogo wa Kumbukumbu);
  • vifaa vya pembeni;
  • coprocessor mtandao;
  • mtawala wa usambazaji wa ndani (Multicore Navigator);
  • moduli za vifaa vya huduma na basi ya ndani ya TeraNet.

Picha 1. Usanifu wa jumla wa processor ya TMS320C6678

Mchakato wa TMS320C6678 hufanya kazi kwa mzunguko wa saa wa 1.25 GHz. Utendaji wa processor unategemea seti ya cores za uendeshaji za C66x CorePack, idadi na muundo ambao hutegemea mfano maalum wa processor. TMS320C6678 DSP inajumuisha cores 8 za aina ya DSP. Msingi ni kipengele cha msingi cha kompyuta na kinajumuisha vitengo vya hesabu, seti za rejista, mashine ya programu, programu na kumbukumbu ya data. Kumbukumbu iliyojumuishwa kwenye kernel inaitwa local.

Mbali na kumbukumbu ya ndani, kuna kumbukumbu ya kawaida kwa cores zote - kumbukumbu ya pamoja ya processor mbalimbali ya msingi (Multicore Shared Memory - MSM). Kumbukumbu iliyoshirikiwa inafikiwa kupitia Mfumo Ndogo wa Kumbukumbu, ambao pia unajumuisha kiolesura cha kumbukumbu cha nje cha EMIF kwa mawasiliano kati ya kichakataji na chip za kumbukumbu za nje.

Kichakataji mtandao huongeza ufanisi wa kichakataji kama sehemu ya aina mbalimbali za vifaa vya mawasiliano ya simu, kutekeleza majukumu ya usindikaji wa data ya kawaida kwa eneo hili katika maunzi. Kichakataji kinategemea Kiongeza kasi cha Kifurushi na Kiongeza kasi cha Usalama. Vipimo vya kichakataji huorodhesha seti ya itifaki na viwango vinavyoauniwa na vichapuzi hivi.

Viungo vya pembeni ni pamoja na:

  • Serial RapidIO (SRIO) toleo la 2.1 - hutoa kasi ya uhamisho wa data hadi 5 GBaud kwa mstari na idadi ya mistari (chaneli) - hadi 4;
  • PCI Express (PCIe) Toleo la Gen2 - hutoa kasi ya uhamisho wa data hadi 5 GBaud kwa kila mstari na idadi ya mistari (chaneli) - hadi 2;
  • HyperLink- kiolesura cha ndani cha basi, ambacho hukuruhusu kubadilisha vichakataji vilivyojengwa kwenye usanifu wa KeyStone moja kwa moja na kubadilishana kwa kasi ya on-chip; kasi ya uhamisho wa data - hadi 50 Gbaud;
  • Gigabit Ethernet (GbE) hutoa kasi ya maambukizi: 10/100/1000 Mbps na inasaidiwa na kasi ya mawasiliano ya mtandao wa vifaa (coprocessor ya mtandao);
  • EMIF DDR3- interface ya kumbukumbu ya nje ya aina ya DDR3; ina upana wa basi wa 64-bit, ikitoa nafasi ya kumbukumbu inayoweza kushughulikiwa ya hadi GB 8;
  • EMIF- interface ya kumbukumbu ya nje ya kusudi la jumla; ina upana wa basi wa 16-bit na inaweza kutumika kuunganisha 256MB NAND Flash au 16MB NOR Flash;
  • TSIP (Bandari za Telecom Serial)- bandari ya serial ya mawasiliano ya simu; hutoa kasi ya maambukizi ya hadi 8 Mbit / s kwa mstari na idadi ya mistari hadi 8;
  • UART- bandari ya serial ya asynchronous ya ulimwengu wote;
  • I2C- basi ya mawasiliano ya ndani;
  • GPIO- pembejeo / pato la madhumuni ya jumla - pini 16;
  • SPI- interface ya serial ya ulimwengu wote;
  • Vipima muda- hutumika kutengeneza matukio ya mara kwa mara.
Moduli za vifaa vya huduma ni pamoja na:
  • Suluhisha na ufuatilie moduli- inaruhusu zana za utatuzi kufikia rasilimali za ndani za processor inayoendesha;
  • boot ROM - huhifadhi programu ya boot;
  • semaphore ya vifaa- hutumika kwa usaidizi wa vifaa kwa ajili ya kuandaa upatikanaji wa pamoja wa michakato ya sambamba kwa rasilimali za processor zilizoshirikiwa;
  • moduli ya usimamizi wa nguvu- hutumia udhibiti wa nguvu wa njia za nguvu za vipengele vya processor ili kupunguza matumizi ya nishati wakati ambapo processor haifanyi kazi kwa uwezo kamili;
  • Mzunguko wa PLL- hutengeneza masafa ya saa ya kichakataji cha ndani kutoka kwa ishara ya saa ya kumbukumbu ya nje;
  • Kidhibiti cha Ufikiaji wa Kumbukumbu ya Moja kwa moja (EDMA).- inasimamia mchakato wa uhamisho wa data, kupakua cores za uendeshaji za DSP na kuwa mbadala kwa Multicore Navigator.
Kidhibiti cha usambazaji wa ndani (Multicore Navigator) ni moduli ya maunzi yenye nguvu na bora inayohusika na usuluhishi wa uhamishaji data kati ya vipengee mbalimbali vya kichakataji. Mifumo ya msingi nyingi kwenye chip TMS320C66xx ni vifaa ngumu sana na ili kuandaa ubadilishanaji wa habari kati ya vifaa vyote vya kifaa kama hicho, kitengo maalum cha vifaa kinahitajika. Multicore Navigator huruhusu cores, peripherals, na vifaa vya kupangisha visichukue vitendaji vya udhibiti wa kubadilishana data. Wakati sehemu yoyote ya kichakataji inahitaji kutuma safu ya data kwa sehemu nyingine, inamwambia tu kidhibiti nini cha kutuma na wapi. Vitendaji vyote vya uhamishaji wenyewe na ulandanishi wa mtumaji na mpokeaji huchukuliwa na Multicore Navigator.

Msingi wa utendakazi wa kichakataji cha msingi cha TMS320C66xx kwa suala la ubadilishanaji wa data wa kasi kati ya vipengee vingi vya wasindikaji, pamoja na moduli za nje, ni basi ya ndani ya TeraNet.

Makala inayofuata itaangalia kwa karibu usanifu wa msingi wa uendeshaji wa C66x.

1. Mwongozo wa Multicore Programming / SPRAB27B - Agosti 2012;
2. TMS320C6678 Multicore Fixed and Floating-Point Digital Processor Data Manual / SPRS691C - Februari 2012.

Microprocessors ni chipsi za dijiti za ulimwengu wote ambapo kitengo cha kompyuta chini ya udhibiti wa programu kinaweza kufanya vitendo mbalimbali. Matokeo yake, microprocessors zote zinakuwezesha kubadilishana kasi yao ya juu kwa utata wa algorithm iliyotekelezwa. Mahali pa microprocessors katika uainishaji wa vifaa vya dijiti inavyoonyeshwa kwenye Mchoro 1.


Kielelezo 1. Uainishaji wa microprocessors

Hata hivyo, wakati wa kuunda vifaa vya digital kwenye microprocessors, vipengele vya tatizo linalotatuliwa vinawekwa juu ya usanifu wa darasa fulani la microprocessors. Hebu fikiria kazi kuu ambazo zinapaswa kutatuliwa wakati wa usindikaji wa ishara (bila kujali utekelezaji wa analog au digital wa mzunguko):

  1. muhtasari wa ishara kadhaa;
  2. uhamisho wa wigo wa ishara;
  3. kuchuja ishara;
  4. hesabu ya wigo wa ishara (kubadilisha Fourier haraka);
  5. coding sugu ya kelele (kukandamiza kelele kwa mifumo ya mawasiliano ya analog);
  6. kutunga (kwa mifumo ya mawasiliano ya kidijitali pekee)
  7. kupiga ishara (kuunda uwezekano sawa wa kusambaza zero na zile)

Tatu za mwisho kati ya aina hizi za usindikaji wa mawimbi ya dijiti hufanywa kwa masafa ya chini, kwa hivyo kwa kawaida huhitaji sehemu ndogo ya utendaji wa kichakataji ili kuzitekeleza. Utendaji bora unahitajika wakati wa kuchakata mawimbi ya masafa ya juu. Hii ni kutokana na muda mfupi kati ya sampuli za mawimbi zilizo karibu. Uendeshaji rahisi zaidi unahitajika katika kipindi sawa cha wakati.

Sasa hebu tuangalie matatizo mawili ya kwanza. Wakati operesheni inahitaji maagizo ya jumla ya binary. Uendeshaji wa kuhamisha wigo wa ishara ya pembejeo kwa mzunguko uliopewa unahitaji operesheni ya kuzidisha na uendeshaji wa kutengeneza sampuli inayofuata ya kazi ya sinusoidal. Hii ina maana kwamba operesheni hii itahitaji utendaji zaidi wa CPU kuliko operesheni ya awali ya uchakataji wa mawimbi. Sasa hebu tulinganishe uendeshaji wa majumuisho na uendeshaji wa kuzidisha. Wakati wa kuzidisha nambari mbili, unahitaji kuhesabu bidhaa kadhaa za sehemu na kuzijumlisha. inakuwezesha kufanya operesheni ya kuzidisha katika mzunguko mmoja wa processor, hivyo uwepo wa multiplier ya vifaa ni kipengele muhimu cha wasindikaji wa ishara.

Sasa hebu tuchambue mchakato wa kuchuja ishara. Wakati wa kutekeleza filters za mzunguko katika kikoa cha muda, ni muhimu kufanya operesheni ya convolution. Mzunguko wa kawaida wa kichujio cha dijiti umeonyeshwa kwenye Mchoro 2.



Kielelezo 2. Mzunguko wa kawaida wa kichujio cha dijiti

Takwimu inaonyesha wazi mlolongo wa sehemu zinazofanana za algorithm. Huna budi kuzidisha mara kwa mara sampuli ya mawimbi ya dijiti kwa mgawo wa kichujio na ujumlishe matokeo na jumla ya awali. Ikumbukwe kwamba adder ina uwezo mkubwa. Kwa processor ya ishara ya 16-bit, upana wa nambari kwenye pato la multiplier itakuwa bits thelathini na mbili. Wakati wa muhtasari wa nambari kadhaa, kina kidogo cha matokeo pia huongezeka. Wakati wa kufanya muhtasari wa nambari 256 zinazofanana, thamani ya matokeo itaongezeka kwa mara 256, ambayo inalingana na ongezeko la kina kidogo cha nambari na nambari nane (2 8 = 256). Kwa hiyo, upana wa adder katika processor ya ishara ya 16-bit itakuwa sawa na bits arobaini (32+8=40).

Kama matokeo, tumeunda hitaji moja zaidi kwa kichakataji cha ishara. Kichakataji cha ishara lazima kiwe na sio tu kizidishi cha maunzi, lakini kikusanya data cha kuzidisha (MAC). Zaidi ya hayo, operesheni ya kuzidisha-mkusanyiko lazima ifanyike katika mzunguko wa mashine ya microprocessor. Ningependa kutambua ukweli kwamba operesheni ya kuzidisha-mkusanyiko ni sehemu muhimu ya sio tu algorithm ya kuchuja, lakini pia (nusu ya algorithm ya msingi ya kipepeo)

Sasa hebu tuzungumze kuhusu njia nyingine ya kuongeza kasi ya processor ya ishara. Msindikaji wa kawaida hutumia muundo wa kitengo cha uendeshaji wa processor ya basi moja. Kichakataji mawimbi hutumia angalau . Hii hukuruhusu kutumia operesheni mbili kwa wakati mmoja kwa ingizo la kitengo cha kimantiki cha hesabu au kikusanyaji cha kuzidisha na kuandika matokeo kwa kumbukumbu ya ufikiaji bila mpangilio.

Kipengele kingine muhimu cha wasindikaji wadogo ni jinsi wanavyopanga utekelezaji wa mpango wa mzunguko (operesheni ya kuzidisha ya MAC wakati wa kutekeleza kichujio cha dijiti au operesheni ya "kipepeo" wakati wa kutekeleza ubadilishaji wa haraka wa Fourier lazima irudiwe mara kadhaa maalum). Katika microprocessor ya kompyuta, kutofautiana maalum hutumiwa kuandaa kitanzi - parameter ya kitanzi. Mwishoni mwa kitanzi, tofauti hii inalinganishwa na thamani iliyotolewa (kawaida sifuri) na mpito hufanywa hadi mwanzo wa kitanzi. Kama matokeo, algorithm ya kuchuja itaonekana kama hii:

  1. Tengeneza anwani ya seli inayofuata ya laini ya kuchelewesha ya kichujio
  2. Soma sampuli ifuatayo ya mawimbi ya pembejeo kutoka kwa laini ya kuchelewa kwa kichujio
  3. Tengeneza anwani ya mgawo wa kichujio kinachofuata
  4. Kokotoa mgawo wa kichujio kinachofuata
  5. Zidisha sampuli ya mawimbi ya ingizo kutoka kwa laini ya kuchelewa kwa mgawo wa kichujio (mara nyingi zaidi ya mizunguko kadhaa ya mashine)
  6. Hitimisho la matokeo na jumla iliyokusanywa tayari (toa sampuli nyingine ya ishara kwenye pato la kichujio)
  7. Badilisha thamani ya kigezo cha kigezo cha kitanzi
  8. Linganisha thamani iliyopatikana na thamani maalum
  9. Rukia mwanzo wa kitanzi au utoke kutoka kwake (kawaida huu ni utaratibu mrefu ambao huchukua mizunguko kadhaa ya mashine)

Katika wasindikaji wa ishara, shirika la mzunguko na uundaji wa anwani inayofuata ya mgawo na sampuli ya chujio hufanyika katika vifaa, na kwa hiyo hauhitaji muda wa ziada. Vipengele hivi vyote hufanya iwezekanavyo kuongeza kasi ya kichakataji cha ishara bila kuongeza mzunguko wa saa yake, kwa sababu hiyo, kasi ya algorithmic ya kichakataji cha ishara wakati wa kufanya shughuli za usindikaji wa ishara ni kubwa mara nyingi kuliko kasi ya microprocessor ya kompyuta. Wacha tuorodheshe mali tofauti za processor ya ishara:

  1. Upatikanaji wa kikusanyaji cha MAC chenye kiongeza-bit cha 40 na kikusanyaji
  2. Upatikanaji wa kibadilisha nambari ya maunzi
  3. Upatikanaji wa shirika la kitanzi cha vifaa
  4. Upatikanaji wa jenereta mbili za anwani
  5. Muundo wa mabasi matatu ya kitengo cha uendeshaji cha microprocessor

Fasihi:

Pamoja na kifungu "Sifa za wasindikaji wa ishara" soma:

DSP ni nini?

Vichakataji mawimbi dijitali (DSP, Vichakata Mawimbi ya Dijiti) huchukua kama mawimbi ya mawimbi ya data yaliyowekwa dijiti mapema, kama vile sauti, video, halijoto, shinikizo na mkao, na kufanya upotoshaji wa hisabati juu yao. Muundo wa ndani wa vichakataji vya mawimbi ya dijiti umeundwa mahususi ili waweze kufanya kazi za hisabati kama vile kuongeza, kutoa, kuzidisha na kugawanya kwa haraka sana.

Ishara lazima zichakatwa ili maelezo yaliyomo yaweze kuonyeshwa kwa michoro, kuchanganuliwa au kugeuzwa kuwa aina nyingine ya mawimbi muhimu. Katika ulimwengu halisi, mawimbi yanayolingana na matukio halisi kama vile sauti, mwanga, halijoto au shinikizo hutambuliwa na kubadilishwa na vipengele vya analogi. Kisha, kigeuzi cha analogi hadi dijiti huchukua mawimbi halisi na kuibadilisha kuwa umbizo la dijitali kama msururu wa moja na sufuri. Katika hatua hii, processor ya ishara ya dijiti huingia kwenye mchakato, ambayo hukusanya habari za dijiti na kuzichakata. Kisha hutoa taarifa ya dijiti kurudi kwenye ulimwengu halisi kwa matumizi zaidi. Taarifa hutolewa kwa moja ya njia mbili - digital au analog. Katika kesi ya pili, ishara ya dijiti hupitishwa kupitia kibadilishaji cha dijiti hadi analog. Vitendo hivi vyote vinafanywa kwa kasi ya juu sana.

Ili kufafanua dhana hii, zingatia mchoro ulio hapa chini, ambao unaonyesha jinsi kichakataji mawimbi ya dijiti kinatumika kama sehemu ya kicheza sauti cha MP3. Wakati wa awamu ya kurekodi, ishara ya sauti ya analog huingia kwenye mfumo kutoka kwa mpokeaji au chanzo kingine. Ishara hii ya analogi inabadilishwa kuwa ishara ya dijiti kwa kutumia kibadilishaji cha analogi hadi dijiti na kutumwa kwa kichakataji cha mawimbi ya dijiti. Kichakataji cha mawimbi ya dijiti huisimba katika umbizo la MP3 na kuhifadhi faili kwenye kumbukumbu. Wakati wa awamu ya uchezaji, faili hurejeshwa kutoka kwenye kumbukumbu, na kusimbuwa na kichakataji mawimbi ya dijiti, na kubadilishwa na kigeuzi cha dijitali hadi analogi na kuwa mawimbi ya analogi ambayo yanaweza kuchezwa tena katika mfumo wa spika. Katika mfano changamano zaidi, kichakataji mawimbi ya dijiti kinaweza kufanya kazi za ziada kama vile udhibiti wa sauti, fidia ya marudio, na kutoa kiolesura cha mtumiaji.

Taarifa zinazozalishwa na kichakataji mawimbi ya dijiti zinaweza kutumiwa na kompyuta, kwa mfano, kudhibiti mifumo ya usalama, simu, mifumo ya uigizaji wa nyumbani, au ukandamizaji wa video. Mawimbi yanaweza kubanwa kwa utumaji wa haraka na bora zaidi kutoka eneo moja hadi jingine (kwa mfano, katika mifumo ya mawasiliano ya simu ya kusambaza sauti na video kupitia laini za simu). Mawimbi yanaweza pia kushughulikiwa zaidi ili kuboresha ubora wao au kutoa maelezo ambayo hayapatikani kwa wanadamu awali (kwa mfano, katika kazi za kughairi mwangwi kwenye simu za mkononi au uboreshaji wa picha ya kompyuta). Ishara za kimwili zinaweza kusindika kwa fomu ya analog, lakini usindikaji wa digital hutoa ubora na kasi iliyoboreshwa.

Kwa sababu DSP inaweza kupangwa, inaweza kutumika katika aina mbalimbali za matumizi. Wakati wa kuunda mradi, unaweza kuandika programu yako mwenyewe au kutumia programu iliyotolewa na Vifaa vya Analog au wahusika wengine.

Kwa maelezo zaidi kuhusu manufaa ya kutumia DSP katika uchakataji wa mawimbi ya ulimwengu halisi, unaweza kusoma sehemu ya kwanza ya Uchakataji wa Mawimbi ya Dijiti 101 - Utangulizi wa Usanifu wa Mfumo wa DSP, yenye kichwa "Kwa Nini DSP?"


Je, ndani ya Kichakataji cha Mawimbi ya Dijiti (DSP) kuna nini?

Kichakataji cha ishara ya dijiti kinajumuisha sehemu kuu zifuatazo:

  • Kumbukumbu ya programu: Ina programu ambazo kichakataji mawimbi ya dijiti hutumia kuchakata data
  • Kumbukumbu ya data: Ina maelezo ambayo yanahitaji kuchakatwa
  • Msingi wa kompyuta: Hufanya usindikaji wa hisabati kwa kupata programu iliyomo kwenye kumbukumbu ya programu na data iliyomo kwenye kumbukumbu ya data.
  • Mfumo mdogo wa I/O: Hutoa anuwai ya vitendaji ili kusawazisha na ulimwengu wa nje

Ili kupata maelezo zaidi kuhusu vichakataji vya Vifaa vya Analogi na vidhibiti vidogo vya analogi kwa usahihi, tunakuhimiza ukague nyenzo zifuatazo:

Uchakataji wa mawimbi ya kidijitali ni somo tata, na linaweza kuwashinda hata wataalamu wa DSP waliobobea zaidi. Tumetoa muhtasari mfupi tu hapa, lakini Vifaa vya Analogi pia hutoa nyenzo za ziada ambazo hutoa maelezo ya kina zaidi kuhusu uchakataji wa mawimbi ya dijitali:

  • - mapitio ya teknolojia na masuala ya matumizi ya vitendo
  • Msururu wa makala katika jarida la Analog Dialogue: (kwa Kiingereza)
    • Sehemu ya 1: Kwa nini unahitaji kichakataji ishara ya dijiti? Usanifu wa DSP na faida za usindikaji wa mawimbi ya dijiti juu ya saketi za jadi za analogi
    • Sehemu ya 2: Pata maelezo zaidi kuhusu vichujio vya dijitali
    • Sehemu ya 3: Utekelezaji wa algoriti kwenye jukwaa la maunzi
    • Sehemu ya 4: Mazingatio ya Kuratibu kwa Usaidizi wa I/O wa Wakati Halisi
  • : Maneno yanayotumiwa mara kwa mara na maana zake

Maabara ya DSP ya kutumia mikono ni njia ya haraka na mwafaka ya kufahamiana na matumizi ya Vifaa vya Analogi vya DSP. Watakuwezesha kupata ujasiri, ujuzi wa kufanya kazi na vichakataji vya mawimbi ya dijitali vya Vifaa vya Analogi kupitia kozi ya mihadhara na mazoezi ya vitendo. Ratiba na habari ya usajili inaweza kupatikana kwenye ukurasa wa Mafunzo na Maendeleo.


"Nakala za kisayansi na kiufundi"- uteuzi makala ya kisayansi na kiufundi redio ya kielektroniki mada: bidhaa mpya vipengele vya elektroniki, maendeleo ya kisayansi katika uwanja wa uhandisi wa redio na umeme, makala Na hadithi maendeleo ya uhandisi wa redio na umeme, mpya teknolojia na mbinu za ujenzi na maendeleo redio-elektroniki vifaa, kuahidi teknolojia siku zijazo, nyanja na mienendo ya maendeleo ya maeneo yote ya uhandisi wa redio na umeme, hakiki za maonyesho redio ya kielektroniki mada.

Nakala hiyo inajadili vigezo kuu vya wasindikaji wa ishara za dijiti (DSPs) na athari zao katika uteuzi wa chip inayofaa, na pia inaelezea hali ya sasa ya soko la DSP.

Wakati wa kuchagua viatu, tunataka kuwa mtindo, starehe na ubora wa juu, kwa hiyo tunatoa upendeleo kwa bidhaa zinazojulikana, makampuni hayo ambayo tayari yanajulikana na yanachukua mbali na maeneo ya mwisho kwenye soko. Sasa tunahitaji kuamua: tunahitaji nini viatu hivi? Ikiwa unakwenda kukimbia asubuhi, ni bora kununua sneakers, na kwa jioni ya ushirika, viatu. Nini kuvaa katika milima? Katika kesi hii, unahitaji viatu maalum vya nguvu na pekee ngumu - vibrams. Nini mbaya kuliko DSP? Wakati wa kuchagua processor ya ishara ya dijiti, itakuwa wazo nzuri kuwa na wazo la soko lililopo la DSP, kujua watengenezaji wakuu na mwelekeo wa ukuzaji wa wasindikaji wanaounda.

Wasindikaji wa DSP wameundwa kufanya usindikaji wa ishara za dijiti - udanganyifu wa kihesabu wa ishara za dijiti. Zinatumika sana katika mifumo isiyo na waya, usindikaji wa sauti na video, na mifumo ya udhibiti. Kwa kuongezeka kwa idadi ya programu zinazotumia DSP na ugumu wa algorithms ya usindikaji, mahitaji yao kwa suala la kuongezeka kwa utendaji na vifaa vilivyo na kiolesura na nodi zingine maalum pia huongezeka. Hadi sasa, aina nyingi za DSP zimeonekana, zote za ulimwengu na zimezingatia safu nyembamba ya kazi.

Jedwali 1. Watengenezaji wakuu wa DSP na hisa zao za soko

Kampuni zinazoongoza sokoni jina la kampuni Sehemu ya soko ya DSP
1 Vyombo vya Texas 54,3%
2 Semiconductor huru 14,1%
3 Vifaa vya Analogi 8,0%
4 Philips Semiconductors 7,5%
5 Mifumo ya Agere 7,3%
6 Toshiba 4,9%
7 Kikundi cha DSP 2,2%
8 NEC Elektroniki 0,6%
9 Fujitsu 0,4%
10 Intersil 0,3%

Makampuni Mengine 0,5%

Jumla 100,0%

Kwa kawaida, hakuna processor moja inayofaa kwa programu zote. Kwa hiyo, kazi ya kwanza ya msanidi programu ni kuchagua processor ambayo inafaa zaidi kwa suala la utendaji, bei, upatikanaji wa pembeni fulani, matumizi ya nguvu, urahisi wa matumizi na vigezo vingine.

Kwa mfano, kwa vifaa vinavyobebeka kama vile simu za mkononi, vichezeshi vinavyobebeka vya dijitali, gharama, ujumuishaji na matumizi ya nishati ni muhimu, na utendaji wa juu zaidi mara nyingi hauhitajiki (kwani kwa kawaida hujumuisha ongezeko kubwa la matumizi ya nishati, bila kutoa manufaa ya usindikaji ikilinganishwa na ya chini. data ya sauti ya kiwango kidogo). Wakati huo huo, kwa mifumo ya hydroacoustic au rada, vigezo vya kuamua ni kasi ya uendeshaji, uwepo wa interfaces za kasi na mfumo wa maendeleo rahisi, na gharama ni kigezo cha sekondari.

Kwa kuongeza, katika hali nyingi ni mantiki kuzingatia eneo la soko linalomilikiwa na muuzaji wa processor, kwa sababu Sio watengenezaji wote wanaweza kukupa anuwai ya vichakataji ambavyo vinashughulikia mahitaji yako yote. Mgawanyo wa sasa wa soko kati ya wasambazaji wakuu (tazama Jedwali 1) unaonyesha kuwa kampuni 4 zilizo juu ya orodha hutoa zaidi ya 80% ya DSP zote zinazotumiwa ulimwenguni. Ni makampuni haya ambayo yanajulikana zaidi kwenye soko la Kirusi, na bidhaa zao mara nyingi hutajwa katika gazeti letu, kwa mfano, sifa kuu za DSP zinazotengenezwa na Texas Instruments? Vifaa vya Analogi viliangaziwa katika #7 ya 2005 na #1 ya 2006.

Ikumbukwe kwamba wazalishaji wa DSP, wakati wa kubuni chips mpya, waziweka wazi kwa matumizi katika programu fulani. Hii inathiri usanifu wao, utendaji, na vifaa vya processor na seti moja au nyingine ya moduli za pembeni. Jedwali la 2 linaonyesha nafasi ya DSP kutoka kwa mtazamo wa waundaji wao.

Jedwali 2. Maeneo ya maombi ya familia za wasindikaji wa ishara kutoka kwa wazalishaji tofauti

Usindikaji wa video, ufuatiliaji wa video, kamera za dijiti, michoro za 3D TMS320DM64x/DaVinci, TMS320C64xx, TMS320C62xx (TI), PNX1300, PNX1500, PNX1700 (Philips), MPC52xx (Freescale)
Usindikaji wa sauti, utambuzi wa hotuba, usanisi wa sauti TMS320C62xx, TMS320C67xx (TI), SHARC (Vifaa vya Analogi)
Vifaa vya kubebeka vya midia TMS320C54xx, TMS320C55xx (TI), Blackfin (Vifaa vya Analogi)
Wireless, mawasiliano ya simu, modemu, vifaa vya mtandao TMS320C64xx, TMS320C54xx, TMS320C55xx (TI), MPC7xxx, MPC86xx, MPC8xx PowerQUICC I, MPC82xx PowerQUICC II, MPC83xx PowerQUICC II Pro, MPC85xx PowerscaleXNvice III (Timu ya Bure ya XRC30RXN) Philips)
Udhibiti wa gari, ubadilishaji wa nguvu, vifaa vya elektroniki vya gari, vifaa vya nyumbani, vifaa vya ofisi TMS320C28xx, TMS320C24xx (TI), ADSP-21xx (Vifaa vya Analogi), MPC55xx, MPC55xx (Freescale)
Dawa, biometriska, mifumo ya kipimo TMS320C62xx, TMS320C67xx, TMS320C55xx, TMS320C28xx (TI), TigerSHARC, SHARC (Vifaa vya Analogi)

Umbizo la data na kina kidogo

Moja ya sifa kuu za wasindikaji wa ishara za dijiti ni muundo wa data iliyochakatwa.

DSP zote hufanya kazi na nambari kamili au za uhakika zinazoelea, nambari kamili zikiwa na upana wa biti 16 au 32 na nambari za sehemu zinazoelea zikiwa na upana wa biti 32. Wakati wa kuchagua umbizo la data, kumbuka yafuatayo: Data kamili ya DSPs (au data ya uhakika isiyobadilika. ) kwa kawaida ni nafuu na hutoa usahihi zaidi kabisa na kina kidogo sawa (kwa kuwa biti zote 32 zimetengwa kwa mantissa katika kichakataji cha pointi 32-bit, lakini 24 tu katika kichakataji cha sehemu inayoelea). Wakati huo huo, aina mbalimbali za ishara ambazo wasindikaji wanaweza kufanya kazi bila kuvuruga ni nyembamba zaidi kwa wasindikaji wa uhakika (kwa maagizo kadhaa ya decimal). Na algorithms rahisi za usindikaji, hii inaweza kuwa haijalishi, kwa sababu Masafa yanayobadilika ya mawimbi halisi ya pembejeo mara nyingi huwa chini ya yale ambayo DSP inaruhusu, lakini katika hali fulani hitilafu za kufurika zinaweza kutokea wakati wa utekelezaji wa programu. Hii husababisha upotoshaji usio sahihi wa kimsingi katika mawimbi ya pato, sawa na upotoshaji kwa sababu ya kukatwa kwa saketi za analogi.

Kwa hiyo, wakati wa kuchagua DSP, ni muhimu kuchambua kwa makini algorithm ya usindikaji na ishara za pembejeo ili kuchagua kwa usahihi kina kidogo na aina ya hesabu. Wakati mwingine, ikiwa haiwezekani kuchagua kichakataji kinachofaa cha sehemu ya kuelea (kwa sababu ya gharama yake ya juu au matumizi ya nguvu), DSP ya uhakika na ukandamizaji wa safu ya nguvu ya ishara zilizochakatwa (compression) hutumiwa, lakini hii inasababisha ongezeko la utata wa algorithm ya usindikaji wa ishara na huongeza mahitaji ya utendaji. Kwa kweli, unaweza kuiga utendakazi wa sehemu zinazoelea kwenye kichakataji na hesabu kamili au ubadilishe hadi kuchakata nambari za biti mbili, lakini hii pia inatatiza programu kwa kiasi kikubwa na inapunguza sana utendaji.

Licha ya mapungufu yote, programu nyingi zilizopachikwa hutumia vichakataji vya uhakika kwa sababu ya gharama ya chini na matumizi ya nguvu.

Kuongeza idadi ya bits huongeza gharama, saizi ya kufa na idadi ya pini za processor zinazohitajika, pamoja na kiasi cha kumbukumbu ya nje inayohitajika. Kwa hiyo, watengenezaji wanajitahidi kutumia kioo na uwezo wa chini kabisa wa biti.

Inafaa kumbuka kuwa upana wa data na kina kidogo cha maagizo ya processor sio sawa kila wakati.

Kasi

Kigezo muhimu wakati wa kuchagua processor ni kasi. Inathiri wakati wa usindikaji wa ishara ya pembejeo na, kwa hiyo, huamua mzunguko wake wa juu. Mojawapo ya makosa ya kawaida ambayo msanidi hufanya ni kusawazisha frequency na utendakazi wa saa, ambayo sio sawa katika hali nyingi.

Mara nyingi, kasi ya DSP inaonyeshwa kwenye MIP (mamilioni ya maagizo kwa sekunde). Hii ndiyo parameter iliyopimwa kwa urahisi zaidi.

Walakini, shida ya kulinganisha kasi ya DSP tofauti ni kwamba wasindikaji wana mifumo tofauti ya maagizo, na wasindikaji tofauti wanahitaji nambari tofauti za maagizo haya kutekeleza algorithm sawa. Kwa kuongeza, wakati mwingine nambari tofauti za mzunguko wa saa zinahitajika kutekeleza maagizo tofauti kwenye processor sawa. Kama matokeo, processor yenye kasi ya MIPS 1000 inaweza kugeuka kuwa polepole mara nyingi kuliko processor yenye kasi ya MIP 300, haswa kwa kina tofauti kidogo.

Suluhisho mojawapo la tatizo hili ni kulinganisha vichakataji kulingana na kasi yao katika kufanya shughuli fulani, kama vile shughuli za kuzidisha-kukusanya (MAC). Kasi ya shughuli kama hizi ni muhimu kwa algoriti zinazotumia uchujaji wa dijiti, uunganisho, na mabadiliko ya Fourier. Kwa bahati mbaya, tathmini kama hiyo pia haitoi habari kamili juu ya utendaji halisi wa processor.

Makadirio sahihi zaidi ni kasi ya utekelezaji wa algorithms fulani - kwa mfano, kuchuja FIR na IIR, lakini hii inahitaji maendeleo ya programu zinazofaa na uchambuzi wa makini wa matokeo ya mtihani.

Mchele. 1 Ulinganisho wa kasi ya DSP za kisasa kutoka kwa wazalishaji tofauti

Kuna makampuni ambayo yanachambua na kulinganisha wasindikaji kulingana na sifa zao kuu, ikiwa ni pamoja na kasi. Kiongozi kati ya kampuni kama hizo ni BDTI - Berkeley Design Technology, Inc. (www.bdti.com). Kwa mfano, Mchoro wa 1 unaonyesha ulinganisho wa kasi ya DSP za kisasa kutoka kwa wazalishaji tofauti.

Nakala hiyo inajadili vigezo kuu vya wasindikaji wa ishara za dijiti (DSPs) na athari zao katika uteuzi wa chip inayofaa, na pia inaelezea hali ya sasa ya soko la DSP.

Wakati wa kuchagua viatu, tunataka kuwa mtindo, starehe na ubora wa juu, kwa hiyo tunatoa upendeleo kwa bidhaa zinazojulikana, makampuni hayo ambayo tayari yanajulikana na yanachukua mbali na maeneo ya mwisho kwenye soko. Sasa tunahitaji kuamua: tunahitaji nini viatu hivi? Ikiwa unakwenda kukimbia asubuhi, ni bora kununua sneakers, na kwa jioni ya ushirika, viatu. Nini kuvaa katika milima? Katika kesi hii, unahitaji viatu maalum vya nguvu na pekee ngumu - vibrams. Nini mbaya kuliko DSP? Wakati wa kuchagua processor ya ishara ya dijiti, itakuwa wazo nzuri kuwa na wazo la soko lililopo la DSP, kujua watengenezaji wakuu na mwelekeo wa ukuzaji wa wasindikaji wanaounda.

Wasindikaji wa DSP wameundwa kufanya usindikaji wa ishara za dijiti - udanganyifu wa kihesabu wa ishara za dijiti. Zinatumika sana katika mifumo isiyo na waya, usindikaji wa sauti na video, na mifumo ya udhibiti. Kwa kuongezeka kwa idadi ya programu zinazotumia DSP na ugumu wa algorithms ya usindikaji, mahitaji yao kwa suala la kuongezeka kwa utendaji na vifaa vilivyo na kiolesura na nodi zingine maalum pia huongezeka. Hadi sasa, aina nyingi za DSP zimeonekana, zote za ulimwengu na zimezingatia safu nyembamba ya kazi.

Kwa kawaida, hakuna processor moja inayofaa kwa programu zote. Kwa hiyo, kazi ya kwanza ya msanidi programu ni kuchagua processor ambayo inafaa zaidi kwa suala la utendaji, bei, upatikanaji wa pembeni fulani, matumizi ya nguvu, urahisi wa matumizi na vigezo vingine.

Kwa mfano, kwa vifaa vinavyobebeka kama vile simu za mkononi, vichezeshi vinavyobebeka vya dijitali, gharama, ujumuishaji na matumizi ya nishati ni muhimu, na utendaji wa juu zaidi mara nyingi hauhitajiki (kwani kwa kawaida hujumuisha ongezeko kubwa la matumizi ya nishati, bila kutoa manufaa ya usindikaji ikilinganishwa na ya chini. data ya sauti ya kiwango kidogo).

Wakati huo huo, kwa mifumo ya hydroacoustic au rada, vigezo vya kuamua ni kasi ya uendeshaji, uwepo wa interfaces za kasi na mfumo wa maendeleo rahisi, na gharama ni kigezo cha sekondari. Kwa kuongeza, katika hali nyingi ni mantiki kuzingatia eneo la soko linalomilikiwa na muuzaji wa processor, kwa sababu Sio watengenezaji wote wanaweza kukupa anuwai ya vichakataji ambavyo vinashughulikia mahitaji yako yote. Mgawanyo wa sasa wa soko kati ya wasambazaji wakuu (tazama Jedwali 1) unaonyesha kuwa kampuni 4 zilizo juu ya orodha hutoa zaidi ya 80% ya DSP zote zinazotumiwa ulimwenguni. Makampuni haya ni maarufu zaidi kwenye soko la Kirusi, na bidhaa zao zinatajwa mara nyingi.

Jedwali 1. Watengenezaji wakuu wa DSP na hisa zao za soko

Kampuni zinazoongoza sokoni jina la kampuni Sehemu ya soko ya DSP
1 Vyombo vya Texas 54,3%
2 Semiconductor huru 14,1%
3 Vifaa vya Analogi 8,0%
4 Philips Semiconductors 7,5%
5 Mifumo ya Agere 7,3%
6 Toshiba 4,9%
7 Kikundi cha DSP 2,2%
8 NEC Elektroniki 0,6%
9 Fujitsu 0,4%
10 Intersil 0,3%
Makampuni Mengine 0,5%
Jumla 100,0%

Ikumbukwe kwamba wazalishaji wa DSP, wakati wa kubuni chips mpya, waziweka wazi kwa matumizi katika programu fulani. Hii inathiri usanifu wao, utendaji, na vifaa vya processor na seti moja au nyingine ya moduli za pembeni. Jedwali la 2 linaonyesha nafasi ya DSP kutoka kwa mtazamo wa waundaji wao.

Jedwali 2. Maeneo ya maombi ya familia za wasindikaji wa ishara kutoka kwa wazalishaji tofauti

Usindikaji wa video, ufuatiliaji wa video, kamera za dijiti, michoro za 3D TMS320DM64x/DaVinci, TMS320C64xx, TMS320C62xx (TI), PNX1300, PNX1500, PNX1700 (Philips), MPC52xx (Freescale)
Usindikaji wa sauti, utambuzi wa hotuba, usanisi wa sauti TMS320C62xx, TMS320C67xx (TI), SHARC (Vifaa vya Analogi)
Vifaa vya kubebeka vya midia TMS320C54xx, TMS320C55xx (TI), Blackfin (Vifaa vya Analogi)
Wireless, mawasiliano ya simu, modemu, vifaa vya mtandao TMS320C64xx, TMS320C54xx, TMS320C55xx (TI), MPC7xxx, MPC86xx, MPC8xx PowerQUICC I, MPC82xx PowerQUICC II, MPC83xx PowerQUICC II Pro, MPC85xx PowerscaleXNvice III (Timu ya Bure ya XRC30RXN) Philips)
Udhibiti wa gari, ubadilishaji wa nguvu, vifaa vya elektroniki vya gari, vifaa vya nyumbani, vifaa vya ofisi TMS320C28xx, TMS320C24xx (TI), ADSP-21xx (Vifaa vya Analogi), MPC55xx, MPC55xx (Freescale)
Dawa, biometriska, mifumo ya kipimo TMS320C62xx, TMS320C67xx, TMS320C55xx, TMS320C28xx (TI), TigerSHARC, SHARC (Vifaa vya Analogi)

Umbizo la data na kina kidogo

Moja ya sifa kuu za wasindikaji wa ishara za dijiti ni muundo wa data iliyochakatwa. DSP zote hufanya kazi na nambari kamili au za uhakika zinazoelea, nambari kamili zikiwa na upana wa biti 16 au 32 na nambari za sehemu zinazoelea zikiwa na upana wa biti 32. Wakati wa kuchagua umbizo la data, kumbuka yafuatayo: Data kamili ya DSPs (au data ya uhakika isiyobadilika. ) kwa kawaida ni nafuu na hutoa usahihi zaidi kabisa na kina kidogo sawa (kwa kuwa biti zote 32 zimetengwa kwa mantissa katika kichakataji cha pointi 32-bit, lakini 24 tu katika kichakataji cha sehemu inayoelea).

Wakati huo huo, aina mbalimbali za ishara ambazo wasindikaji wanaweza kufanya kazi bila kuvuruga ni nyembamba zaidi kwa wasindikaji wa uhakika (kwa maagizo kadhaa ya decimal). Na algorithms rahisi za usindikaji, hii inaweza kuwa haijalishi, kwa sababu Masafa yanayobadilika ya mawimbi halisi ya pembejeo mara nyingi huwa chini ya yale ambayo DSP inaruhusu, lakini katika hali fulani hitilafu za kufurika zinaweza kutokea wakati wa utekelezaji wa programu. Hii husababisha upotoshaji usio sahihi wa kimsingi katika mawimbi ya pato, sawa na upotoshaji kwa sababu ya kukatwa kwa saketi za analogi.

Kwa hiyo, wakati wa kuchagua DSP, ni muhimu kuchambua kwa makini algorithm ya usindikaji na ishara za pembejeo ili kuchagua kwa usahihi kina kidogo na aina ya hesabu. Wakati mwingine, ikiwa haiwezekani kuchagua kichakataji kinachofaa cha sehemu ya kuelea (kwa sababu ya gharama yake ya juu au matumizi ya nguvu), DSP ya uhakika na ukandamizaji wa safu ya nguvu ya ishara zilizochakatwa (compression) hutumiwa, lakini hii inasababisha ongezeko la utata wa algorithm ya usindikaji wa ishara na huongeza mahitaji ya utendaji.

Kwa kweli, unaweza kuiga utendakazi wa sehemu zinazoelea kwenye kichakataji na hesabu kamili au ubadilishe hadi kuchakata nambari za biti mbili, lakini hii pia inatatiza programu kwa kiasi kikubwa na inapunguza sana utendaji.

Licha ya mapungufu yote, programu nyingi zilizopachikwa hutumia vichakataji vya uhakika kwa sababu ya gharama ya chini na matumizi ya nguvu. Kuongeza idadi ya bits huongeza gharama, saizi ya kufa na idadi ya pini za processor zinazohitajika, pamoja na kiasi cha kumbukumbu ya nje inayohitajika. Kwa hiyo, watengenezaji wanajitahidi kutumia kioo na uwezo wa chini kabisa wa biti.

Inafaa kumbuka kuwa upana wa data na kina kidogo cha maagizo ya processor sio sawa kila wakati.

Kasi

Kigezo muhimu wakati wa kuchagua processor ni kasi. Inathiri wakati wa usindikaji wa ishara ya pembejeo na, kwa hiyo, huamua mzunguko wake wa juu. Mojawapo ya makosa ya kawaida ambayo msanidi hufanya ni kusawazisha frequency na utendakazi wa saa, ambayo sio sawa katika hali nyingi. Mara nyingi, kasi ya DSP inaonyeshwa kwenye MIP (mamilioni ya maagizo kwa sekunde). Hii ndiyo parameter iliyopimwa kwa urahisi zaidi.

Walakini, shida ya kulinganisha kasi ya DSP tofauti ni kwamba wasindikaji wana mifumo tofauti ya maagizo, na wasindikaji tofauti wanahitaji nambari tofauti za maagizo haya kutekeleza algorithm sawa. Kwa kuongeza, wakati mwingine nambari tofauti za mzunguko wa saa zinahitajika kutekeleza maagizo tofauti kwenye processor sawa. Kama matokeo, processor yenye kasi ya MIPS 1000 inaweza kugeuka kuwa polepole mara nyingi kuliko processor yenye kasi ya MIP 300, haswa kwa kina tofauti kidogo.

Suluhisho mojawapo la tatizo hili ni kulinganisha vichakataji kulingana na kasi yao katika kufanya shughuli fulani, kama vile shughuli za kuzidisha-kukusanya (MAC). Kasi ya shughuli kama hizi ni muhimu kwa algoriti zinazotumia uchujaji wa dijiti, uunganisho, na mabadiliko ya Fourier. Kwa bahati mbaya, tathmini kama hiyo pia haitoi habari kamili juu ya utendaji halisi wa processor.

Makadirio sahihi zaidi ni kasi ya utekelezaji wa algorithms fulani - kwa mfano, kuchuja FIR na IIR, lakini hii inahitaji maendeleo ya programu zinazofaa na uchambuzi wa makini wa matokeo ya mtihani.

Kuna makampuni ambayo yanachambua na kulinganisha wasindikaji kulingana na sifa zao kuu, ikiwa ni pamoja na kasi. Kiongozi kati ya kampuni kama hizo ni BDTI - Berkeley Design Technology, Inc. (www.bdti.com). Kwa mfano, Mchoro wa 1 unaonyesha ulinganisho wa kasi ya DSP za kisasa kutoka kwa wazalishaji tofauti.

Mchele. 1. Mfano wa kulinganisha utendaji wa DSP mbalimbali za uhakika

Shirika la kumbukumbu

Shirika la mfumo wa kumbukumbu ya processor huathiri utendaji. Hii ni kutokana na ukweli kwamba maelekezo muhimu ya DSP yana kazi nyingi na kuongeza kasi ya uendeshaji wao inahitaji kusoma kwa wakati mmoja wa seli kadhaa za kumbukumbu. Kwa mfano, maagizo ya MAC yanahitaji uendeshaji 2 na maagizo yenyewe yasomwe kwa wakati mmoja ili kutekelezwa katika mzunguko wa saa 1. Hii inafanikiwa kwa njia mbalimbali, ikiwa ni pamoja na matumizi ya kumbukumbu ya bandari mbalimbali, mgawanyiko katika kumbukumbu ya programu na kumbukumbu ya data (usanifu wa Harvard), matumizi ya cache ya amri, nk.

Kiasi cha kumbukumbu kinachohitajika imedhamiriwa na programu. Inapaswa kuzingatiwa kuwa kumbukumbu iliyojengwa ndani ya processor kawaida ina kasi ya juu ya uendeshaji kuliko kumbukumbu ya nje, hata hivyo, kuongeza kiasi chake huongeza gharama na matumizi ya nguvu ya DSP, na kiasi kidogo cha kumbukumbu ya programu hairuhusu kuhifadhi. algorithms ngumu. Wakati huo huo, ikiwa kiasi hiki kinatosha kwa madhumuni yako, uwepo wa kumbukumbu iliyojengwa inaweza kurahisisha muundo kwa ujumla na kupunguza ukubwa wake, matumizi ya nguvu na gharama.

DSP nyingi za uhakika zinazotumiwa katika programu zilizopachikwa zinahitaji kumbukumbu ndogo ya ndani, kwa kawaida 4 hadi 256 KB, na upana mdogo wa data ya nje ya basi.

Wakati huo huo, DSP za sehemu zinazoelea kawaida huhusisha kufanya kazi na seti kubwa za data na algoriti changamano na huwa na kumbukumbu kubwa iliyojengewa ndani au mabasi makubwa ya anwani kwa ajili ya kuunganisha kumbukumbu ya nje (na wakati mwingine zote mbili). Mara nyingine tena, tunasisitiza kwamba uchaguzi wa aina ya kumbukumbu na ukubwa unapaswa kuwa matokeo ya uchambuzi wa kina wa maombi ambayo DSP hutumiwa.

Urahisi wa maendeleo ya maombi

Kiwango cha ugumu wa maendeleo kitatambuliwa na programu. Ikumbukwe kwamba urahisishaji zaidi kwa msanidi programu (kawaida huhusishwa na utumiaji wa lugha za kiwango cha juu wakati wa kupanga DSPs) katika hali nyingi husababisha msimbo mdogo na wa haraka, ambayo husababisha hitaji la kutumia nguvu zaidi na. DSP za gharama kubwa. Kwa upande mwingine, katika hali ya kisasa, kasi ya maendeleo (na, kwa hiyo, kutolewa kwa bidhaa mpya kwenye soko) inaweza kuleta manufaa zaidi kuliko muda uliotumiwa kuboresha kanuni wakati wa kuandika programu katika lugha ya mkutano.

Kwa kuongeza, ni lazima ikumbukwe kwamba hakuna programu zisizo na hitilafu, hivyo zana za kurekebisha na uwezo wa kusahihisha programu katika kifaa kilichomalizika mara nyingi ni muhimu sana. Wakati huo huo, wakati wa kuchagua DSP na zana za maendeleo, ni muhimu kuzingatia baadhi ya vipengele vya usanifu wa processor.

Wale wanaotumia vikusanyaji vya lugha ya kiwango cha juu (HLL) wakati mwingine huona kwamba hutoa msimbo bora kwa vichakataji vya sehemu zinazoelea. Hii hutokea kwa sababu kadhaa: kwanza, lugha nyingi za kiwango cha juu hazitumii hesabu za uhakika, pili, seti ya maagizo ya DSP ya uhakika ni ndogo zaidi, na tatu, wasindikaji wa pointi zinazoelea kwa ujumla huweka vikwazo vichache vya uwezo. kumbukumbu iliyotumika.

Matokeo bora zaidi yanapatikana wakati wa kuandaa programu katika Java kwa wasindikaji wa VLIW (wasindikaji walio na neno refu sana la maagizo) na mfumo rahisi wa maagizo wa RISC wa orthogonal na faili kubwa za rejista. Walakini, hata kwa wasindikaji hawa, nambari inayotokana na mkusanyaji ni polepole kuliko nambari ya kusanyiko iliyoboreshwa kwa mikono. Kwa upande mwingine, uwezo wa kwanza kuiga mchakato wa uchakataji wa mawimbi katika programu kama vile MathLab na tafsiri yake ya kiotomatiki katika programu ya DSP hukuruhusu kuondoa makosa mengi makubwa katika hatua ya awali ya ukuzaji.

Uharibifu wa mipango ya kumaliza inaweza kufanywa ama kwenye emulator ya vifaa vya mfumo wa kumaliza au kwenye simulator ya programu. Kwa kawaida, kurekebisha kwenye simulator ni rahisi zaidi kwa suala la vifaa vinavyotumiwa, lakini hukuruhusu kutambua makosa yote yanayowezekana. Takriban watengenezaji wote huwapa watengenezaji simulators na emulators za DSP zao. Takriban DSP zote za kisasa zinaauni uigaji wa ndani ya mzunguko kwa mujibu wa kiwango cha IEEE 1149.1 JTAG. Tunapotumia teknolojia ya JTAG, tunahama kutoka kuiga kichakataji na kifaa cha nje hadi kudhibiti kichakataji moja kwa moja wakati wa utekelezaji wa programu, ambayo huturuhusu kuongeza kwa kiasi kikubwa kiwango cha mawasiliano kati ya mpangilio na kifaa halisi na, kwa hivyo, kuongeza kuegemea kwa kifaa. mchakato wa kurekebisha.

Mbali na emulators, watengenezaji hutoa anuwai ya kinachojulikana kama "vifaa vya kuanza" na "moduli za tathmini", ambazo unaweza kuanza kuunda programu mara moja, bila kungoja utengenezaji wa mfano wa kifaa kinachotengenezwa. Kwa kuongeza, baadhi ya programu zinaweza kutumia zana hizi za ukuzaji kama sehemu za mwisho.

Matumizi ya nishati

Wasindikaji wa DSP hutumika sana katika vifaa vya rununu ambapo matumizi ya nguvu ni jambo linalosumbua sana. Mbinu nyingi hutumiwa kupunguza matumizi ya nishati, ikiwa ni pamoja na kupunguza volteji ya usambazaji na kuanzisha vitendaji vya usimamizi wa nguvu, kama vile kubadilisha mzunguko wa saa kwa nguvu, kubadili hadi hali ya kulala au ya kusubiri, au kuzima vifaa vya pembeni ambavyo havitumiki kwa sasa. Ikumbukwe kwamba hatua hizi zina athari kubwa kwa kasi ya processor na, ikiwa inatumiwa vibaya, inaweza kusababisha kutofanya kazi kwa kifaa kilichoundwa (kwa mfano, baadhi ya simu za mkononi ambazo wakati mwingine ziliacha kuwasha kutokana na makosa. katika mipango ya usimamizi wa nishati) au kuzorota kwa sifa zake za utendaji (kwa mfano, wakati muhimu wa kurejesha wakati wa kuondoka kwa hali ya usingizi).

Kukadiria matumizi ya nguvu sio kazi rahisi, kwani thamani hii inatofautiana kulingana na kazi zinazofanywa na processor. Kwa bahati mbaya, wazalishaji wengi huchapisha tu matumizi ya "kawaida" na "kiwango cha juu", na nini maana ya ufafanuzi huu sio wazi kila wakati. Isipokuwa ni Texas Instruments, ambayo huorodhesha matumizi ya nguvu kulingana na aina ya maagizo na usanidi wa kichakataji.

Bei

Gharama ya processor bila shaka ni sababu ya kuamua wakati wa kuchagua DSP, hasa kwa kiasi kikubwa cha uzalishaji. Kwa kawaida, watengenezaji wanajitahidi kuchagua processor ya gharama nafuu, lakini inapaswa kukumbushwa katika akili kwamba hii inaweza kusababisha gharama kubwa za kuunda upya kifaa ikiwa processor iliyochaguliwa kwa sababu fulani haifikii sifa zinazohitajika. Kwa kuongeza, wakati wa kuchagua processor kulingana na gharama, ni muhimu kuzingatia gharama ya vipengele vya nje (kwa mfano, DSP yenye kumbukumbu iliyojengwa ya uwezo wa kutosha ni ghali zaidi kuliko sawa bila kumbukumbu iliyojengwa; lakini bei ya kifaa kwa ujumla kulingana nayo inaweza kuwa chini sana kutokana na ukosefu wa vipengele vingine na ukubwa mdogo wa PCB). Jambo muhimu sana linaloathiri gharama ya DSP ni aina ya kifurushi chake: IC katika vifurushi vya kauri vilivyoundwa kwa ajili ya hali ya viwanda au maalum ya uendeshaji ni ghali zaidi kuliko IC sawa zinazofanya kazi katika anuwai ya joto ya kibiashara. Na hatimaye, bei ya processor inategemea sana kiasi na utaratibu wa utoaji.

Mbinu ya kuchagua processor

Kama ilivyoonyeshwa hapo awali, kuchagua DSP sahihi kunategemea sana programu: kichakataji kinaweza kufaa kwa baadhi ya programu lakini hakifai kwa zingine. Wakati wa kuchagua processor, unahitaji kuamua sifa muhimu zaidi katika kesi fulani na kuziweka kwa utaratibu wa umuhimu. Kisha, kwa mujibu wa vigezo hivi, chagua wagombea iwezekanavyo na, hatimaye, chagua bora zaidi kutoka kwa wale wanaofaa, ukizingatia sifa za ziada, zisizo muhimu. Katika kesi hii, ni vyema kutumia tathmini ya sifa za processor zinazozalishwa na kampuni inayojulikana (kwa mfano, BTDI). Ikumbukwe kwamba BTDI inatathmini DSPs si tu kwa kasi, lakini pia kwa vigezo vingine: ufanisi wa kumbukumbu, matumizi ya nguvu, nk.

Kwa mfano, kutekeleza maombi, mambo muhimu zaidi kwetu ni kasi, bei, ufanisi wa kumbukumbu na matumizi ya nguvu. Tumetambua washindani wakuu, ikijumuisha DSP zilizo na C64x na C64x+ cores kutoka Texas Instruments na TigerSHARC kutoka kwa Vifaa vya Analogi. Mchoro wa 2 unaonyesha grafu ya sifa za kulinganisha za wasindikaji hawa kulingana na vigezo vya kasi, gharama, matumizi ya nguvu na urahisi wa zana za maendeleo.


Mchele. 2. Mchoro wa uteuzi wa DSP

Sasa vipaumbele. Ikiwa mahitaji yetu ya msingi ni kasi ya juu na bei ya chini, tunachagua Hati za Texas. Ikiwa tunaunda kifaa cha mkononi na tunahitaji matumizi ya chini ya nishati, na tuko tayari kutoa kasi, tunachukua Vifaa vya Analogi. Inawezekana kwamba wasindikaji waliochaguliwa watakuwa karibu sana katika vigezo muhimu. Katika kesi hii, uchaguzi utatambuliwa na sifa zisizo muhimu: upatikanaji wa zana za kurekebisha, uzoefu wa awali wa msanidi programu, upatikanaji wa vipengele, nk.

Uchaguzi wa uangalifu wa DSP mapema katika utayarishaji unaweza kusaidia kuondoa gharama zisizo za lazima zinazohusiana na kuchagua DSP isiyo sahihi na kupunguza muda wa jumla wa utayarishaji na wakati na gharama ya kutambua makosa.

Fasihi

  1. Jeff Bier, Kuchagua Kichakataji: Vigezo na Zaidi (S043), Berkeley, California: Berkeley Design Technology, Inc., Marekani, 2006.
  2. Kuchagua Kichakataji cha DSP, Berkeley, California: Berkeley Design Technology, Inc., USA, 2000.