Вы находитесь на странице: 1из 6

ÝËÅÊÒÐÎÍÍÛÅ ÑÐÅÄÑÒÂÀ: ÈÑÑËÅÄÎÂÀÍÈß, ÐÀÇÐÀÁÎÒÊÈ

Ä. ò. í. À. Â. ÏÀËÀÃÈÍ, ê. ò. í. Â. Í. ÎÏÀÍÀÑÅÍÊÎ,
À. Í. ËÈÑÎÂÛÉ Äàòà ïîñòóïëåíèÿ â ðåäàêöèþ
09.01 2007 ã.
Óêðàèíà, ã. Êèåâ, Èíñòèòóò êèáåðíåòèêè èì. Â. Ì. Ãëóøêîâà Îïïîíåíò ê. ò. í. Â. Ã. ÁÐÎÂÊÎÂ
E-mail: vlopanas@ukr.net (ÎÍÏÓ, ã. Îäåññà)

ÏÐÎÅÊÒÈÐÎÂÀÍÈÅ ÐÅÊÎÍÔÈÃÓÐÈÐÓÅÌÛÕ
ÑÈÑÒÅÌ ÍÀ ÏËÈÑ
Ëîãèêî-èíôîðìàöèîííûé ïîäõîä ê ïðî- Ñ ïîÿâëåíèåì ñîâðåìåííûõ êðèñòàëëîâ ÏËÈÑ [3]
åêòèðîâàíèþ ÝÂÌ ìîäèôèöèðóåòñÿ òèïà FPGA ñ áîëüøîé ëîãè÷åñêîé åìêîñòüþ (ñâûøå
ïðèìåíèòåëüíî ê ðåêîíôèãóðèðóåìûì 10 ìèëëèîíîâ ëîãè÷åñêèõ âåíòèëåé) ñòàëî âîçìîæ-
óñòðîéñòâàì íà ÏËÈÑ, ÷òî ïîçâîëÿåò íûì èñïîëüçîâàòü ïîëó÷åííûå ðåçóëüòàòû äëÿ ïî-
îïðåäåëèòü îïòèìàëüíîå êîëè÷åñòâî ñòðîåíèÿ ðåêîíôèãóðèðóåìûõ óñòðîéñòâ è ñèñòåì ïî-
âûøåííîé ñëîæíîñòè íà áàçå îäíîðîäíûõ ñðåä ñ
óðîâíåé èåðàðõè÷åñêîé ñèñòåìû. ïîëíîñòüþ ïðîãðàììèðóåìîé àðõèòåêòóðîé. Ïðè ñî-
çäàíèè òàêèõ ñèñòåì, êîòîðûå äîëæíû îáëàäàòü âû-
Ðàçðàáîòêà è îñâîåíèå ñåðèéíîãî ïðîèçâîäñòâà ñîêîé íàäåæíîñòüþ è ãèáêîñòüþ ïðèñïîñîáëåíèÿ ê
ÑÁÈÑ òðåáóåò áîëüøèõ çàòðàò êàê íà ðàçðàáîòêó, òàê ñòðóêòóðå ðåøàåìûõ çàäà÷, ïðèíöèï ðåêîíôèãóðèðó-
è íà îáîðóäîâàíèå äëÿ èõ èçãîòîâëåíèÿ. Â ñõåìû, åìîñòè ñòðóêòóðû ÿâëÿåòñÿ îïðåäåëÿþùèì. Èç åãî
âûïîëíåííûå ìåòîäîì ïå÷àòíîãî ìîíòàæà, èçìåíå- ðåàëèçàöèè àâòîìàòè÷åñêè ñëåäóåò, â ÷àñòíîñòè, âîç-
íèÿ âíîñèòü äîâîëüíî ñëîæíî, à â ñõåìàõ, âûïîë- ìîæíîñòü ïàðàëëåëüíîãî âûïîëíåíèÿ îïåðàöèé, åñ-
íåííûõ â âèäå ÁÈÑ è ÑÁÈÑ, íèêàêèå çàðàíåå íå ïðåä- òåñòâåííî îïðåäåëÿåìîãî ñàìîé ñòðóêòóðîé àëãîðèò-
óñìîòðåííûå èçìåíåíèÿ íå âîçìîæíû âîîáùå. Ýòî ìà è ðåàëèçóåìîãî ñ ïîìîùüþ ñîîòâåòñòâóþùåé íà-
îãðàíè÷èâàåò íå òîëüêî âîçìîæíîñòè èõ ñïåöèàëèçà- ñòðîéêè àâòîìàòà. Ïðèìåíÿÿ ïðèíöèï ðåêîíôèãóðè-
öèè äëÿ êîíêðåòíûõ ïðèìåíåíèé, íî è ïåðñïåêòèâû ðóåìîñòè, óäàåòñÿ ïðîñòûì ïåðåïðîãðàììèðîâàíèåì
ìîäåðíèçàöèè, ðàñøèðåíèÿ ôóíêöèé, âíåñåíèÿ èçìå- ñòðóêòóðû ÐÓ íàñòðàèâàòü åãî íà ýôôåêòèâíóþ ðåà-
íåíèé â àëãîðèòì ôóíêöèîíèðîâàíèÿ. Ïîýòîìó îä- ëèçàöèþ çàäàííîãî àëãîðèòìà, ñîõðàíÿÿ ôóíêöèî-
íèì èç àêòóàëüíûõ òðåáîâàíèé ê ñîâðåìåííûì íàëüíóþ óíèâåðñàëüíîñòü óñòðîéñòâà.
óñòðîéñòâàì âû÷èñëèòåëüíîé òåõíèêè è ñèñòåì Îïðåäåëèìñÿ ñ ïîíÿòèÿìè. ÏËÈÑ — ïðîãðàììè-
óïðàâëåíèÿ ÿâëÿåòñÿ ïîâûøåíèå èõ àäàïòèðóåìîñòè ðóåìàÿ ëîãè÷åñêàÿ èíòåãðàëüíàÿ ñõåìà, ñî÷åòàþùàÿ
(ãèáêîñòè). ðåãóëÿðíîñòü ñòðóêòóðû ïîëóïðîâîäíèêîâîãî çàïî-
Îäíèì èç ïóòåé ðåàëèçàöèè ýòèõ òðåáîâàíèé ÿâëÿ- ìèíàþùåãî óñòðîéñòâà ñ óíèâåðñàëüíîñòüþ ìèêðî-
åòñÿ ñîçäàíèå óñòðîéñòâ (ñèñòåì, êîìïîíåíòîâ) ñ ïðî- ïðîöåññîðà, ïîçâîëÿþùàÿ ïðîãðàììíî ôîðìèðîâàòü
ãðàììèðóåìîé ñòðóêòóðîé. âíóòðåííèé ñïåöèàëèçèðîâàííûé ïðîöåññîð. Êîíôè-
Ñåãîäíÿ ïðîãðàììèðóåìûå ëîãè÷åñêèå èíòåãðàëü- ãóðàöèÿ — îïðåäåëåííàÿ ñîâîêóïíîñòü àïïàðàòíûõ
íûå ñõåìû — ÏËÈÑ (Programmable Logic Devices ñðåäñòâ è ñîåäèíåíèé ìåæäó íèìè, ðåàëèçóþùàÿ çà-
— PLD) ïðî÷íî âîøëè â ïðàêòèêó ñîâðåìåííîé êîì- äàííûé àëãîðèòì ôóíêöèîíèðîâàíèÿ â òå÷åíèå îïðå-
ïüþòåðíîé òåõíèêè, çàíÿâ ñâîþ íèøó ïðåæäå âñåãî äåëåííîãî ïåðèîäà âðåìåíè. Ðåêîíôèãóðèðóåìîñòü —
â êà÷åñòâå ñðåäñòâà èññëåäîâàòåëüñêîãî ïðîåêòèðî- ñâîéñòâî ñèñòåìû ïåðåîïðåäåëÿòü ñîâîêóïíîñòü àï-
âàíèÿ è ïðîáëåìíîé îðèåíòàöèè. ïàðàòíûõ ñðåäñòâ è ñîåäèíåíèé ìåæäó íèìè â ñîîò-
Øèðîêî èçâåñòíû ðàáîòû [1] ïî îðãàíèçàöèè ðå- âåòñòâèè ñ òðåáóåìûì àëãîðèòìîì ôóíêöèîíèðîâà-
êîíôèãóðèðóåìîãî êîìïüþòåðà, ïðåäñòàâëåííîãî äâó- íèÿ. Ôàéë êîíôèãóðàöèè — ïðîãðàììíûé ôàéë,
ìÿ îñíîâíûìè ÷àñòÿìè — ïîñòîÿííîé (êîìïüþòåð ñ ñôîðìèðîâàííûé ïîñðåäñòâîì ÑÀÏÐ äëÿ êîíêðåòíî-
æåñòêîé ñòðóêòóðîé) è ïåðåìåííîé (â âèäå íàáîðà ãî òèïà êðèñòàëëà ÏËÈÑ, ïðåäíàçíà÷åííûé äëÿ ñî-
âû÷èñëèòåëüíûõ óñòðîéñòâ), êîòîðûå ìîãóò ñ ïîìî- çäàíèÿ òðåáóåìîé êîíôèãóðàöèè â êðèñòàëëå ÏËÈÑ.
ùüþ ïðîãðàììû ïåðåñòðàèâàòü ñâîþ ñòðóêòóðó, à òàê- Ïîñòàíîâêà çàäà÷è
æå ðàáîòû [2] ïî ôîðìàëèçîâàííîìó ïðîåêòèðîâà- Ðåêîíôèãóðèðóåìàÿ ñèñòåìà ñîñòîèò èç ïîñòîÿí-
íèþ ïðîöåññîðîâ ñ ãèáêîé àðõèòåêòóðîé. Îíè ñïî- íîé F (èëè «ôèêñèðîâàííîé») ÷àñòè (Host-êîìïüþ-
ñîáñòâîâàëè ïîÿâëåíèþ íîâîãî íàïðàâëåíèÿ â âû- òåðà) è ïåðåìåííîé V ÷àñòè — ÐÓ, êîòîðûå ìîæíî
÷èñëèòåëüíîé òåõíèêå ïî ïðîåêòèðîâàíèþ ðåêîíôè- îáúåäèíÿòü â ðàçëè÷íûå êîíôèãóðàöèè. Àðõèòåêòóðà
ãóðèðóåìûõ óñòðîéñòâ (ÐÓ) ñ ãèáêîé (ïðîãðàììèðó- ðåêîíôèãóðèðóåìûõ ñèñòåì çàâèñèò îò ìîùíîñòè
åìîé) àðõèòåêòóðîé íà áàçå ÏËÈÑ — “Reconfigurable ìíîæåñòâà àëãîðèòìîâ (NF), âûïîëíÿåìûõ íà îáîðó-
Computing” (÷òî â îáùåì ñëó÷àå îáîçíà÷àåò äâóåäè- äîâàíèè F, è îò ìîùíîñòè ìíîæåñòâà àëãîðèòìîâ
íîå ïîíÿòèå — êàê ðåêîíôèãóðèðóåìîé ñòðóêòóðû (NV), âûïîëíÿåìûõ íà îáîðóäîâàíèè V. Ñîîòíîøåíèå
êîìïüþòåðà (hardware), òàê è ïðîöåññà îáðàáîòêè ýòèõ âåëè÷èí îïðåäåëÿåò ïðåäëàãàåìóþ êëàññèôèêà-
äàííûõ, âûïîëíÿåìîãî êîìïüþòåðîì). öèþ ðåêîíôèãóðèðóåìûõ âû÷èñëèòåëüíûõ ñèñòåì:
Òåõíîëîãèÿ è êîíñòðóèðîâàíèå â ýëåêòðîííîé àïïàðàòóðå, 2007, ¹ 3
15
ÝËÅÊÒÐÎÍÍÛÅ ÑÐÅÄÑÒÂÀ: ÈÑÑËÅÄÎÂÀÍÈß, ÐÀÇÐÀÁÎÒÊÈ
— âû÷èñëèòåëüíûå ñèñòåìû, îðèåíòèðîâàííûå íà ãäå Ai, Λi, Ri ( i = 1, N ) — ñîîòâåòñòâåííî ìíîæåñòâà àëãîðèò-
Host-êîìïüþòåð, â êîòîðîì ñîñðåäîòî÷åíû îñíîâíûå ìîâ, îïåðàòîðîâ è èõ èíôîðìàöèîí-
âû÷èñëèòåëüíûå ìîùíîñòè, à ðåêîíôèãóðèðóåìûé íî-êîäîâûå ïðåäñòàâëåíèÿ íà i-ì óðîâ-
êîìïüþòåð îáåñïå÷èâàåò ïîâûøåíèå ïðîèçâîäèòåëü- íå ïðîãðàììèðîâàíèÿ;
íîñòè òîëüêî äëÿ óçêîãî êëàññà çàäà÷ (NF→N, NV→0, Θ — ñîâîêóïíîñòü îáîáùåííûõ õàðàêòåðè-
ñòèê.
NF>>NV);
— ðåêîíôèãóðèðóåìûå âû÷èñëèòåëüíûå ñèñòåìû, Îáîáùåííûå õàðàêòåðèñòèêè ôîðìàëüíîé ìîäå-
îðèåíòèðîâàííûå íà ÐÓ (NF→0, NV→N, NV>>NF), â ëè (1) ëåãêî ïåðåñ÷èòûâàþòñÿ â òåõíè÷åñêèå ïàðà-
êîòîðûõ Host-êîìïüþòåð èñïîëüçóåòñÿ â îñíîâíîì ìåòðû ÏËÈÑ, à òàêæå â èíôîðìàöèîííûå õàðàêòåðè-
òîëüêî äëÿ âûïîëíåíèÿ âñïîìîãàòåëüíûõ ôóíêöèé ñòèêè àâòîìàòíûõ ïðåäñòàâëåíèé êàæäîãî ( i = 1, N )
(ñåðâèñ, ââîä-âûâîä), à âñå àëãîðèòìû âûïîëíÿþò- óðîâíÿ èåðàðõèè ïðîãðàììèðóåìûõ àâòîìàòîâ. Â [2,
ñÿ ïðåèìóùåñòâåííî íà ÐÓ, êîòîðîå ìîæåò èìåòü ñîá- ñ. 135—136] ïðåäëîæåíà ìåòîäèêà ýíòðîïèéíîé îöåí-
ñòâåííîå ïîëå âíåøíèõ óñòðîéñòâ (÷åðåç ïëàòû ðàñ- êè èíôîðìàöèîííîé ñëîæíîñòè àâòîìàòà ÷åðåç âåðî-
øèðåíèÿ) èëè îáùåå ïîëå âíåøíèõ óñòðîéñòâ ñ Host- ÿòíîñòè åãî ïåðåõîäîâ è ñîñòîÿíèé. Íàïðèìåð, äëÿ
êîìïüþòåðîì, ê êîòîðûì ÐÓ èìååò íåïîñðåäñòâåí- ïîñòðîåíèÿ ìàòðèöû âåðîÿòíîñòåé ïåðåõîäîâ îïðåäå-
íûé äîñòóï. ÐÓ ÿâëÿåòñÿ àâòîíîìíûì óñòðîéñòâîì â ëÿåòñÿ âåðîÿòíîñòü êàæäîãî ïåðåõîäà èç ñîñòîÿíèÿ ai
ñëó÷àå êîãäà NF=0, NV=N, à Host-êîìïüþòåð îòñóò- â ñîñòîÿíèå aj ( i, j = 1, N ):
ñòâóåò;
— âû÷èñëèòåëüíûå ñèñòåìû, â êîòîðûõ Host-êîì- p(a j = δ(ai , x) = pij . (2)
ïüþòåð è ÐÓ èìåþò ïðèáëèçèòåëüíî îäèíàêîâóþ Çíàÿ ìàòðèöó ïåðåõîäîâ pij (i, j = 1, N ), ìàòðè-
ñëîæíîñòü (NF≈NV), ïðè ýòîì ÐÓ îðèåíòèðîâàíî íà
ðåøåíèå òðóäîåìêèõ çàäà÷, à Host-êîìïüþòåð îáåñ- öó âåðîÿòíîñòè Pj ( j = 1, N ) ïðåáûâàíèÿ àâòîìàòà â
ïå÷èâàåò ìîùíóþ ïîääåðæêó â ÷àñòè òðàíñëÿöèè, êàæäîì ( i, j = 1, N )-ñîñòîÿíèè ìîæíî îïðåäåëèòü â
ââîäà-âûâîäà, ñåðâèñà è ò. ä. ðåçóëüòàòå ðåøåíèÿ ñèñòåìû ëèíåéíûõ óðàâíåíèé:
Äëÿ îïðåäåëåíèÿ îïòèìàëüíîãî êîëè÷åñòâà óðîâ- N N
íåé ïðîãðàììèðóåìûõ êîìïîíåíòîâ (â êà÷åñòâå êî- Pj = ∑ Pi pij , j = 1, N , ∑ P = 1.
i (3)
òîðûõ áóäóò èñïîëüçîâàòüñÿ ÏËÈÑ) íåîáõîäèìî ìî- i =1 i =1
äèôèöèðîâàòü èçâåñòíûé ëîãèêî-èíôîðìàöèîííûé Îöåíêà ñóììàðíîãî îáúåìà îáîðóäîâàíèÿ àâòî-
ìåòîä ïðîåêòèðîâàíèÿ (ËÈÌ) [4], ëîãè÷åñêàÿ êîí- ìàòíîé êîìïîçèöèè ïðèíèìàåòñÿ ïðîïîðöèîíàëüíîé
öåïöèÿ êîòîðîãî èñõîäèò èç ìíîãîóðîâíåâîé îðãàíè- ñóììå ýíòðîïèéíûõ îöåíîê ôóíêöèé ïåðåõîäà è âû-
çàöèè ñèñòåìû ñòðóêòóðíîãî ïðîãðàììèðîâàíèÿ è õîäà, êàæäàÿ èç êîòîðûõ ïîäñ÷èòûâàåòñÿ íà îñíîâå
ïðåäñòàâëåíèÿ ïðîöåññîðà êîìïîçèöèåé îïåðàöèîí- èçâåñòíîé ôîðìóëû ýíòðîïèè, îïðåäåëÿþùåé ñðåä-
íîãî è óïðàâëÿþùåãî àâòîìàòîâ. Â ñîîòâåòñòâèè ñ íþþ äëèíó i-ãî óïðàâëÿþùåãî ñëîâà:
èíôîðìàöèîííîé êîíöåïöèåé ïðîöåññîð ðàññìàòðè- N
âàåòñÿ êàê èíôîðìàöèîííàÿ ñèñòåìà, âñÿ èíôîðìà- H i = −∑ Pi log 2 pi .
öèÿ â êîòîðîé îòíåñåíà ê òðåì «ñôåðàì» ñîñòîÿíèé: (4)
i =1
õðàíåíèÿ, òðàíñïîðòèðîâêè è ïðåîáðàçîâàíèÿ. Î÷å-  âûðàæåíèÿõ (2)—(4) çà âåëè÷èíó âåðîÿòíîñòè
âèäíî, ÷òî ïðè îïðåäåëåííûõ ñîîòíîøåíèÿõ ìåæäó ïðèíèìàåòñÿ ÷àñòîòà i-ãî ñîñòîÿíèÿ.
îáúåêòàìè èíôîðìàöèè â ýòèõ ñôåðàõ ìîæíî ïîëó- Äëÿ ôîðìàëèçîâàííîãî ïðåäñòàâëåíèÿ ìîäåëè
÷èòü îïòèìàëüíûå òåõíè÷åñêèå ïàðàìåòðû ÝÂÌ. Îï- ðåêîíôèãóðèðóåìûõ óñòðîéñòâ âûïîëíåíà ìîäèôè-
òèìàëüíîé ñ÷èòàåòñÿ òàêàÿ ñòðóêòóðíàÿ ðåàëèçàöèÿ êàöèÿ ìåòîäà ËÈÌ, êîòîðàÿ èëëþñòðèðóåòñÿ ñëåäó-
ìîäåëè ÝÂÌ, äëÿ êîòîðîé â ñîîòâåòñòâèè ñ ïðèíÿòû- þùåé ñõåìîé:
ìè êðèòåðèÿìè íàéäåíû îïòèìàëüíîå êîëè÷åñòâî óðîâ-
íåé è îïòèìàëüíûå ñîîòíîøåíèÿ ìåæäó îáîáùåííû- ∀ (∃Ω : Ai ⇒ Λ i ⇒ Ri
i
ìè õàðàêòåðèñòèêàìè êîìïîíåíò íà êàæäîì óðîâíå,
à òàêæå ìåæäó ñîîòâåòñòâóþùèìè õàðàêòåðèñòèêà-
ìè êîìïîíåíò ñîñåäíèõ óðîâíåé.
Ìåòîäèêà ïðîåêòèðîâàíèÿ ðåêîíôèãóðèðóåìîé Ai −1 ⇒ Λ i −1 ⇒ Ri −1 (5)
ñèñòåìû M M
Ñóùíîñòü ËÈÌ èëëþñòðèðóåòñÿ ñõåìîé

∀ (∃Ω : Ai ⇒ Λ i ⇒ Ri A0 ⇒ Λ 0 ⇒ R0 (Θ = Θextr (Q, t )).


i
 ñîîòâåòñòâèè ñ (1) â äàííîì ñëó÷àå Ri — ìíî-
æåñòâî àïïàðàòíûõ ðåàëèçàöèé îïåðàòîðîâ i-ãî óðîâ-
Ai −1 ⇒ Λ i −1 ⇒ Ri −1 (1) íÿ. Ïðè÷åì ïðè ñèíòåçå îïòèìàëüíîé ñòðóêòóðû
M óñòðîéñòâà íåêîòîðûå óðîâíè ìîãóò áûòü èñêëþ÷åíû.
 ñõåìå (5) äëÿ êëàññè÷åñêèõ àðõèòåêòóð èñïîëüçóþò-
ñÿ ñëåäóþùèå óðîâíè ïðîãðàììèðîâàíèÿ: τ0 — ôè-
A0 ⇒ Λ 0 ⇒ R0 (Θ = Θextr (Q, t )), çè÷åñêèé èëè «íóëåâîé»; τ1 — ìèêðîïðîãðàììíûé;
τ2 — ïðîãðàììíûé; τ3 — àëãîðèòìè÷åñêèé. Ïðîãðàì-
Òåõíîëîãèÿ è êîíñòðóèðîâàíèå â ýëåêòðîííîé àïïàðàòóðå, 2007, ¹ 3
16
ÝËÅÊÒÐÎÍÍÛÅ ÑÐÅÄÑÒÂÀ: ÈÑÑËÅÄÎÂÀÍÈß, ÐÀÇÐÀÁÎÒÊÈ
ìèðîâàíèå íà «íóëåâîì» óðîâíå îïðåäåëÿåò ôèçè÷å- íåêîòîðîãî êðèòåðèÿ êà÷åñòâà. Òî åñòü ëþáîé îïåðà-
ñêóþ ñòðóêòóðó óñòðîéñòâà, êîòîðàÿ â êîíå÷íîì èòîãå òîð îòîáðàæàåòñÿ òîëüêî îäíèì ýëåìåíòîì èç áèá-
ðåàëèçóåò çàäàííûé àëãîðèòì ôóíêöèîíèðîâàíèÿ, ò. å. ëèîòåêè. Â ðåçóëüòàòå îïðåäåëÿåòñÿ ñòðóêòóðà, ðåàëè-
âûïîëíÿåò ïðîãðàììèðîâàíèå ñòðóêòóðû óñòðîéñòâà. çóþùàÿ çàäàííûé ãðàô. Òîãäà ðåøåíèå çàäà÷è ìîæåò
 îòëè÷èå îò ñõåìû (1), ïðåäëîæåííàÿ ìîäèôèêàöèÿ áûòü ïîëó÷åíî ìåòîäàìè öåëî÷èñëåííîãî ìàòåìàòè-
(5) îñóùåñòâëÿåò íå ìèêðîïðîãðàììíóþ, à àïïàðàò- ÷åñêîãî ïðîãðàììèðîâàíèÿ.
íóþ ðåàëèçàöèþ àëãîðèòìîâ íà âåíòèëüíîì óðîâíå. Çàäà÷à îïòèìèçàöèè ñîñòîèò â îïðåäåëåíèè ìèíè-
Ïðåäëîæåííàÿ ìîäåëü ïðîåêòèðóåìîé âû÷èñëè- ìóìà öåëåâîé ôóíêöèè, à êðèòåðèåì êà÷åñòâà ÿâëÿ-
òåëüíîé ñèñòåìû [5] ïðåäñòàâëåíà ÷åòâåðêîé: þòñÿ ñóììàðíîå âðåìÿ âûïîëíåíèÿ âñåõ àëãîðèòìîâ
S=<Ì, A, B, D>, è çàòðàòû îáîðóäîâàíèÿ:
ãäå M — ìíîæåñòâî ìàòåìàòè÷åñêèõ ìåòîäîâ äëÿ ïðåäìåòíîé α ∑∑ tiz xiz + β∑∑ qiz xiz = min,
îáëàñòè, ëåæàùèõ â îñíîâå ôóíêöèîíèðîâàíèÿ ñèñòåìû; i z i z
A — ìíîæåñòâî àëãîðèòìîâ ðåàëèçàöèè ìåòîäà;
B={b} — àëôàâèò êîíñòðóêòèâîâ, èç êîòîðûõ ñèíòåçèðóåòñÿ (∀i = 1, n, ∀z = 1, k )
ñòðóêòóðà; ïðè îãðàíè÷åíèÿõ
D — ïðîöåäóðà îïèñàíèÿ ïðîåêòà (îïèñàíèå îáúåêòà).
Òàêèì îáðàçîì, ïðîöåññ ïðîåêòèðîâàíèÿ ñîñòîèò
k

â ðåøåíèè çàäà÷è ñèíòåçà ñòðóêòóðû íà îñíîâå êîí- ∑x


z =1
iz = 1, i = 1, n, z = 1, k ,
ñòðóêòèâîâ {b} àëôàâèòà B äëÿ âûïîëíåíèÿ îïðåäå-
ëåííîãî àëãîðèòìà A, ðåàëèçóþùåãî ìåòîä M, ëåæà-
ùèé â îñíîâå ôóíêöèîíèðîâàíèÿ ñòðóêòóðû, â ñîîò-
∑∑ q
i z
x ≤ Q0 ,
iz iz ∑∑ t
i z
x ≤ T0 ,
iz iz

âåòñòâèè ñ òðåáîâàíèÿìè ñïåöèôèêàöèé. Ðåçóëüòàòîì ãäå α, β — âåñîâûå êîýôôèöèåíòû, êîòîðûå ìîãóò áûòü îïðåäå-
ïðîöåäóðû D ÿâëÿåòñÿ îïèñàíèå ïðîåêòà âî âõîäíîì ëåíû, íàïðèìåð, ìåòîäîì ýêñïåðòíûõ îöåíîê;
ÿçûêå ÑÀÏÐ. Q0 — äîïóñòèìûå àïïàðàòíûå çàòðàòû;
Ïðåäëîæåí ñèíòåç ñòðóêòóðíîé ðåàëèçàöèè ïî- T0 — äîïóñòèìîå âðåìÿ âûïîëíåíèÿ âñåõ àëãîðèòìîâ.
ñëåäîâàòåëüíîñòè àëãîðèòìîâ, êîãäà ìåòîä/çàäà÷à (M) Ìåòîäû ðåøåíèÿ òàêèõ çàäà÷ äîñòàòî÷íî õîðîøî
ïðåäñòàâëÿåòñÿ ïîñëåäîâàòåëüíîñòüþ àëãîðèòìîâ ðàçðàáîòàíû è ïîçâîëÿþò çà äîïóñòèìîå âðåìÿ ïîëó-
( Ai , ∀i = 1, n ): ÷àòü ïðèåìëåìîå ðåøåíèå [6].
Ïðåäñòàâëåííûå âûøå ìîäåëè è ïîäõîäû ïîëî-
M = U Ai . æåíû â îñíîâó îáîáùåííîãî àëãîðèòìà ïðîåêòèðî-
i
âàíèÿ [7] ðåêîíôèãóðèðóåìûõ óñòðîéñòâ íà ÏËÈÑ
 ðåêîíôèãóðèðóåìûõ óñòðîéñòâàõ èçíà÷àëüíî (ðèñ. 1), ïðåäñòàâëÿþùèõ ñîáîé áàçîâóþ ïëàòó (äëÿ
çàäàíà áàçîâàÿ (íóëåâàÿ) àðõèòåêòóðà, ðåàëèçîâàííàÿ ñîïðîöåññîðîâ, ïîäêëþ÷àåìûõ ê ñòàíäàðòíîé øèíå
íà ÏËÈÑ â âèäå ôóíêöèîíàëüíîãî îáðàáàòûâàþùåãî Host-êîìïüþòåðà), íåñóùóþ ïëàòó (äëÿ àâòîíîìíûõ
ïîëÿ ôèêñèðîâàííîé ðàçìåðíîñòè, êîíòðîëëåðà øèíû óñòðîéñòâ) ñ íàáîðîì ïëàò è ìîäóëåé ðàñøèðåíèÿ èëè
Host-êîìïüþòåðà, ïîëÿ ïàìÿòè, à òàêæå õîðîøî ñòðóê- æå êðèñòàëë ÏËÈÑ (äëÿ ðåàëèçàöèè System-on-Chip).
òóðèðîâàííîé áèáëèîòåêè ôàéëîâ êîíôèãóðàöèé Àëãîðèòì ïðåäñòàâëÿåò ñîáîé ïîñëåäîâàòåëüíîñòü
(ÁÔÊ) ñòðóêòóðíûõ ðåàëèçàöèé ìåòîäîâ (àëãîðèò- ýòàïîâ: àíàëèç ïðîáëåìíîé îáëàñòè → ïîñòàíîâêà çà-
ìîâ), âûïîëíÿþùèõ îòîáðàæåíèå àëãîðèòìà â ñòðóê- äà÷è → âûáîð ïîäõîäÿùåãî àëãîðèòìà èç ÁÔÊ (ñèí-
òóðíóþ ðåàëèçàöèþ (F:Ai⇒Bi). Êàæäûé àëãîðèòì òåç ôàéëà êîíôèãóðàöèè äëÿ ðåàëèçàöèè àëãîðèòìà â
èìååò îòîáðàæåíèå F:Ai⇒Bi â ñòðóêòóðíóþ ðåàëèçà- ñëó÷àå åãî îòñóòñòâèÿ ñ ïîñëåäóþùåé çàïèñüþ â ÁÔÊ)
öèþ (Bi), êîòîðàÿ ïðåäñòàâëÿåò ñîáîé ôàéë êîíôèãó- → îòîáðàæåíèå íà óðîâíå îáùåé àðõèòåêòóðû (ôóíê-
ðàöèè äëÿ êðèñòàëëà ÏËÈÑ.  îáùåì ñëó÷àå èìååòñÿ öèîíàëüíàÿ ñõåìà) → ïîäãîòîâêà ôîðìàëèçîâàííî-
íåñêîëüêî âàðèàíòîâ ðåàëèçàöèè àëãîðèòìà (íàïðè- ãî òåõíè÷åñêîãî çàäàíèÿ (ÒÇ) → ïðîãðàììèðîâàíèå
ìåð, ïîñëåäîâàòåëüíàÿ, ïîñëåäîâàòåëüíî-ïàðàëëåëü- ñòðóêòóðû íà îñíîâå ôàéëà êîíôèãóðàöèè → ïðîãðàì-
íàÿ è ïàðàëëåëüíàÿ): ìèðîâàíèå àëãîðèòìà → ðåøåíèå çàäà÷è → îöåíêà
Bi = U Biz , ( z = 1, k ). õàðàêòåðèñòèê ïàðàìåòðîâ (ñòðóêòóðû, ïðîöåññà ðå-
z øåíèÿ) → ïðîâåðêà ïàðàìåòðîâ íà ñîîòâåòñòâèå
Êàæäûé âàðèàíò õàðàêòåðèçóåòñÿ ïàðàìåòðàìè óñòàíîâëåííûì êðèòåðèÿì (ïðè íåîáõîäèìîñòè ñëåäó-
áûñòðîäåéñòâèÿ (âðåìÿ âûïîëíåíèÿ — tiz) è àïïàðàò- þùàÿ èòåðàöèÿ) → ââîä â ýêñïëóàòàöèþ. Áëîê-ñõå-
íûìè çàòðàòàìè (qiz). Ïðè÷åì ïðåäïîëàãàåì, ÷òî ìîù- ìà íà ðèñ. 1 ïðåäóñìàòðèâàåò òàêæå êîððåêöèþ êðè-
íîñòü ìíîæåñòâà B ÿâëÿåòñÿ äîñòàòî÷íîé äëÿ ðåàëè- òåðèåâ.
çàöèè øèðîêîãî íàáîðà àëãîðèòìîâ.  òîì ñëó÷àå, Ðàçðàáîòàííàÿ ìåòîäèêà ïðîåêòèðîâàíèÿ, îïèðà-
åñëè òðåáóåìàÿ ðåàëèçàöèÿ i-ãî àëãîðèòìà â áèáëèî- ÿñü íà ëåæàùóþ â åå îñíîâå ëîãèêî-èíôîðìàöèîí-
òåêå îòñóòñòâóåò (Bi=∅), òî íåîáõîäèìî ñ ïîìîùüþ íóþ ìîäåëü ÐÓ, ïîçâîëÿåò ðåøèòü ãëàâíóþ çàäà÷ó
èíñòðóìåíòàëüíûõ ñðåäñòâ ÑÀÏÐ ÏËÈÑ ñîçäàòü åå è ïðîåêòèðîâàíèÿ — ôîðìàëèçîâàòü ïðîöåññ ïîèñêà
âêëþ÷èòü â êà÷åñòâå ñòàíäàðòíîãî ýëåìåíòà â áèá- îïòèìàëüíîé ïàðû «àëãîðèòì — ñòðóêòóðíàÿ ðåàëè-
ëèîòåêó. Òàêèì îáðàçîì, çàäà÷à îïòèìèçàöèè ñâîäèòñÿ çàöèÿ». Ìåòîäèêà ïðåäíàçíà÷àåòñÿ äëÿ ïðîåêòèðîâà-
ê óïîðÿäî÷åííîìó íàçíà÷åíèþ êàæäîé i-é âåðøèíå íèÿ ïðîáëåìíî-îðèåíòèðîâàííûõ ñîïðîöåññîðîâ è àâ-
ãðàôà ðåàëèçóåìîãî àëãîðèòìà (Biz)-ãî ýëåìåíòà áèá- òîíîìíûõ óñòðîéñòâ, ðàáîòàþùèõ ñ çàäàííûì íàáî-
ëèîòåêè ñ öåëüþ ïîëó÷åíèÿ ýêñòðåìàëüíîãî çíà÷åíèÿ ðîì àëãîðèòìîâ; ðåêîíôèãóðèðóåìûõ ïðîöåññîðîâ
Òåõíîëîãèÿ è êîíñòðóèðîâàíèå â ýëåêòðîííîé àïïàðàòóðå, 2007, ¹ 3
17
ÝËÅÊÒÐÎÍÍÛÅ ÑÐÅÄÑÒÂÀ: ÈÑÑËÅÄÎÂÀÍÈß, ÐÀÇÐÀÁÎÒÊÈ

Àíàëèç ïðîáëåìíîé
îáëàñòè

Âûáîð è óñòàíîâêà
Ïîñòàíîâêà çàäà÷è êðèòåðèåâ

Êîððåêöèÿ
Ñèíòåç ôàéëà Íàëè÷èå ôàéëà
êðèòåðèåâ
êîíôèãóðàöèè êîíôèãóðàöèè

1
Îòîáðàæåíèå íà
àðõèòåêòóðó

Ïðîãðàììèðîâàíèå
ñòðóêòóðû Ïîäãîòîâêà ÒÇ

Îöåíêà ïàðàìåòðîâ
Ðåøåíèå çàäà÷è

Ïðîâåðêà ïî
êðèòåðèÿì

Ââîä ñèñòåìû
â ýêñïëóàòàöèþ

Ðèñ. 1. Áëîê-ñõåìà àëãîðèòìà ïðîåêòèðîâàíèÿ


ñ êîíâåéåðíîé îáðàáîòêîé äàííûõ; ïàðàìåòðè÷åñêèõ ôèêàöèè ðåêîíôèãóðèðóåìîãî óñòðîéñòâà â ñîñòàâå
IP-Core äëÿ ðåàëèçàöèè çàäàííûõ àëãîðèòìîâ, êîòî- ñèñòåìû íåîáõîäèìî ðàçðàáîòàòü äðàéâåð ýòîãî
ðûå ïðåäñòàâëÿþòñÿ ýëåìåíòàìè áèáëèîòåêè ôàéëîâ óñòðîéñòâà [8] è òåñò-ïðîãðàììó äëÿ âåðèôèêàöèè
êîíôèãóðàöèè; System-on-Chip. Îíà ìîæåò âèäîèç- âñåõ êîìïîíåíòîâ ñèñòåìû.
ìåíÿòüñÿ è ðàçâèâàòüñÿ â çàâèñèìîñòè îò èñõîäíîãî Ðàçðàáîòêà òåñòîâ äëÿ âåðèôèêàöèè îòíîñèòñÿ ê
çàäàíèÿ, êëàññà çàäà÷, ýëåìåíòíî-òåõíîëîãè÷åñêîé ïðèêëàäíîìó ïðîãðàììèðîâàíèþ.  êà÷åñòâå ñðåäû
áàçû è ò. ï. äëÿ ðàçðàáîòêè ïðîãðàììû èñïîëüçóåòñÿ ñðåäà Borland
Íàèáîëåå òðóäîåìêèì è íàèìåíåå ôîðìàëèçîâàí- Studio 2006, êîìïèëÿòîð ÿçûêà Delphi. Âûáîð ÿçûêà
íûì ÿâëÿåòñÿ ïåðåõîä îò àíàëèçà ïðåäìåòíîé îáëàñòè ïðîãðàììèðîâàíèÿ Delphi îáóñëîâëåí èñêëþ÷èòåëü-
ê ïîñòàíîâêå çàäà÷è, êîòîðàÿ, â ñâîþ î÷åðåäü, ïðåä- íî íàëè÷èåì ìîùíûõ áèáëèîòåê äëÿ ðàáîòû ñ äðàé-
ïîëàãàåò ïîèñê ïîäõîäÿùèõ ìàòåìàòè÷åñêèõ ìåòîäîâ âåðîì.
åå ðåøåíèÿ è âûáîð îïòèìàëüíûõ ñ èñïîëüçîâàíèåì Ïðèìåð ïðîåêòèðîâàíèÿ
ðàññìîòðåííîé âûøå ëîãèêî-èíôîðìàöèîííîé ìîäåëè.
Ïðîåêòèðîâàíèå ðåêîíôèãóðèðóåìûõ ïðîáëåìíî-  êà÷åñòâå ïðèìåðà ðàññìîòðèì ïîñòðîåíèå ðå-
îðèåíòèðîâàííûõ óñòðîéñòâ ñ àïïàðàòíîé ðåàëèçàöè- êîíôèãóðèðóåìîé ñèñòåìû â âèäå ïðîãðàììíî-àïïà-
åé íà áàçå êðèñòàëëîâ ÏËÈÑ ôèðìû Xilinx â âèäå ðàòíîãî êîìïëåêñà íà áàçå ñîâðåìåííûõ ñðåäñòâ ïðî-
áàçîâûõ áèáëèîòå÷íûõ ôóíêöèîíàëüíûõ áëîêîâ ïî- ãðàììèðîâàíèÿ, ïðîåêòèðîâàíèÿ è âåðèôèêàöèè íà
ñðåäñòâîì èõ îïèñàíèÿ íà ÿçûêå VHDL è ñõåìîòåõ- îñíîâå ðåêîíôèãóðèðóåìîãî óñòðîéñòâà äëÿ ðåàëè-
íè÷åñêîãî ðåäàêòîðà îáåñïå÷èâàåò èõ èñïîëüçîâàíèå çàöèè íàáîðà áèáëèîòå÷íûõ ôóíêöèîíàëüíûõ áëîêîâ
øèðîêèì êðóãîì ðàçðàáîò÷èêîâ öèôðîâûõ óñòðîéñòâ ñ ïëàâàþùåé òî÷êîé (ñîîòâåòñòâóþùèõ ñòàíäàðòó
ïóòåì âûáîðà îïòèìàëüíîé ñòðóêòóðû (ïî êðèòåðèÿì IEEE-754): ñëîæåíèÿ, óìíîæåíèÿ, äåëåíèÿ è ïðåîá-
"áûñòðîäåéñòâèå — ñëîæíîñòü ðåàëèçàöèè"). ðàçîâàíèÿ ôîðìàòîâ ïðåäñòàâëåíèÿ ÷èñåë ñ ïëàâàþ-
Íà âñåõ ýòàïàõ ïðîåêòèðîâàíèÿ âûïîëíÿåòñÿ âå- ùåé òî÷êîé (ÔÏÒ) â ôîðìàò ñ ôèêñèðîâàííîé òî÷-
ðèôèêàöèÿ ðàçðàáàòûâàåìîãî óñòðîéñòâà. Äëÿ ðåêîí- êîé (ÔÔÒ) è îáðàòíîãî ïðåîáðàçîâàíèÿ.
ôèãóðèðóåìûõ ñèñòåì íåîáõîäèìî â ðåàëüíîé ñðåäå Àïïàðàòíûé êîìïëåêñ ïðåäñòàâëÿåò ñîáîé ðåêîí-
ñ ïîìîùüþ òåñò-ïðîãðàìì âåðèôèöèðîâàòü ïðîåêòè- ôèãóðèðóåìîå óñòðîéñòâî (ïëàòó ADS-XLX-SP3-
ðóåìîå óñòðîéñòâî. Äëÿ ôóíêöèîíèðîâàíèÿ è âåðè- EVL400 ôèðìû Avnet), ïîäêëþ÷àåìîå ê Host-êîìïü-
Òåõíîëîãèÿ è êîíñòðóèðîâàíèå â ýëåêòðîííîé àïïàðàòóðå, 2007, ¹ 3
18
ÝËÅÊÒÐÎÍÍÛÅ ÑÐÅÄÑÒÂÀ: ÈÑÑËÅÄÎÂÀÍÈß, ÐÀÇÐÀÁÎÒÊÈ
þòåðó ÷åðåç øèíó PCI (÷òî òðåáóåò íàëè÷èÿ íà êðèñ- âåêòîðîâ (ñîãëàñíî ñòàíäàðòó IEEE-754) â äâîè÷íîé
òàëëå êîíòðîëëåðà øèíû PCI).  ôàéë êîíôèãóðàöèè è øåñòíàäöàòåðè÷íîé ôîðìå; íàæàòèå íà êíîïêó «çà-
(ïðîåêò) äëÿ ïðîãðàììèðîâàíèÿ êðèñòàëëà ÏËÈÑ ïèñàòü äàííûå â óñòðîéñòâî» èíèöèèðóåò ïåðåäà÷ó
äîëæíû áûòü âêëþ÷åíû, ïîìèìî êîíòðîëëåðà øèíû îïåðàíäîâ è êîä îïåðàöèè ñëîæåíèÿ ïî øèíå â
PCI, òàêæå ôóíêöèîíàëüíûå áëîêè äëÿ ðåàëèçàöèè óñòðîéñòâî, óñòðîéñòâî îáðàáàòûâàåò îïåðàíäû è çà-
áàçîâûõ àðèôìåòè÷åñêèõ îïåðàöèé. ïèñûâàåò â ÎÇÓ îïåðàíä-ðåçóëüòàò; ðåçóëüòàò ñ ÎÇÓ
Äëÿ âåðèôèêàöèè àïïàðàòíûõ áëîêîâ ðàçðàáîòàíî ÷èòàåòñÿ è îòîáðàæàåòñÿ â ñîîòâåòñòâóþùèõ òåêñòî-
ïðîãðàììíîå îáåñïå÷åíèå, îñíîâíîå îêíî ãðàôè÷å- âûõ îêíàõ â íîðìàëüíîì âèäå è â ôîðìàòå â äâîè÷-
ñêîãî èíòåðôåéñà êîòîðîãî ïðèâåäåíî íà ðèñ. 2. íîì è øåñòíàäöàòåðè÷íîì âèäå. Îáìåí äàííûìè ñ
óñòðîéñòâîì äëÿ âñåõ äðóãèõ îïåðàöèé ïðîèñõîäèò
àíàëîãè÷íî. Íà ðèñ. 4 îòîáðàæåí ãðàôè÷åñêèé èí-
òåðôåéñ îêíà äëÿ îïåðàöèè ïðåîáðàçîâàíèÿ ÷èñëà
ÔÏÒ â ÷èñëî ÔÔÒ. ×èñëî â ÔÔÒ ñîñòîèò èç ïåðâî-
ãî ëåâîãî áèòà — çíàêà è îñòàëüíûõ áèòî⠗ ìîäóëÿ
÷èñëà.

Ðèñ. 2. Ãëàâíîå îêíî ïðîãðàììû


Ïî ôóíêöèîíàëüíîìó íàçíà÷åíèþ îïåðàöèè ðàç-
äåëÿþòñÿ íà äâà òèïà: àðèôìåòè÷åñêèå îïåðàöèè, îïå- Ðèñ. 4. Ãðàôè÷åñêèé èíòåðôåéñ ìîäóëÿ ïðîãðàììû
ðàöèè ïðåîáðàçîâàíèÿ ôîðìàòîâ. Êàæäàÿ èç êíîïîê äëÿ îïåðàöèè ïðåîáðàçîâàíèÿ ôîðìàòîâ
(+, –, /, è ò. ä.) ïðè íàæàòèè íà íåå êëàâèøè "ìûøêè"
èíèöèèðóåò îòîáðàæåíèå îêíà ñîîòâåòñòâóþùåé îïå- Êðîìå ôóíêöèîíàëüíûõ ñåêöèé, â ïðîãðàììå èìå-
ðàöèè. Íàïðèìåð ïðè íàæàòèè íà êíîïêó «+» îòîáðà- åòñÿ ñåêöèÿ «Ìåíþ», êîòîðàÿ èìååò êíîïêó áûñòðîãî
æàåòñÿ îêíî, ãðàôè÷åñêèé èíòåðôåéñ êîòîðîãî äëÿ çàâåðøåíèÿ ðàáîòû è êíîïêó, îòêðûâàþùóþ èíôîð-
ðàáîòû ñ îïåðàöèåé ñëîæåíèÿ ÷èñåë â ÔÏÒ ïðèâåäåí ìàöèîííîå îêíî î ïðîäóêòå.
íà ðèñ. 3. Ðàçðàáîòàííûé ïðîåêò âêëþ÷àåò (ïîìèìî óñòðîé-
ñòâà óïðàâëåíèÿ è êîíòðîëëåðà øèíû PCI) ñëåäóþ-
ùèå ñîñòàâíûå ôóíêöèîíàëüíûå áëîêè ñ ïëàâàþùåé
òî÷êîé: ñëîæåíèÿ, óìíîæåíèÿ, äåëåíèÿ è ïðåîáðàçî-
âàíèÿ ôîðìàòîâ. Ïðîåêò çàíèìàåò 72% ðåñóðñîâ êðè-
ñòàëëà ÏËÈÑ òèïà Spartan 3 XC3S400 (2586 Slice èç
3584 Slices, 4 èç 16 óìíîæèòåëÿ 16×16) è õàðàêòåðè-
çóåòñÿ ñëåäóþùèìè ÷àñòîòíûìè ïàðàìåòðàìè: ñëî-
æåíèå (âû÷èòàíèå) — êîíâåéåð ñ 5 ñòóïåíÿìè
(75 ÌÃö); äåëåíèå — êîíå÷íûé àâòîìàò ñ 6 ñîñòîÿ-
íèÿìè (100 ÌÃö); óìíîæåíèå — êîìáèíàöèîííàÿ
ñõåìà (45 ÌÃö); ïðåîáðàçîâàíèå ôîðìàòîâ (71 ÌÃö).
Âûâîäû
Ðàçðàáîòàíû ïðèíöèïû ïîñòðîåíèÿ è ôóíêöèîíè-
ðîâàíèÿ íîâîãî êëàññà óñòðîéñòâ âû÷èñëèòåëüíîé
òåõíèêè è ñèñòåì óïðàâëåíèÿ ñ ðåêîíôèãóðèðóåìîé
àðõèòåêòóðîé íà áàçå êðèñòàëëîâ ÏËÈÑ, àðõèòåêòóðà
êîòîðûõ îòëè÷àåòñÿ îò òðàäèöèîííûõ àðõèòåêòóð ôîí-
Ðèñ. 3. Ãðàôè÷åñêèé èíòåðôåéñ ìîäóëÿ ïðîãðàììû íåéìàíîâñêîãî òèïà ñâîéñòâàìè äèíàìè÷åñêîé ðåêîí-
äëÿ îïåðàöèè ñëîæåíèÿ ÷èñåë ôèãóðèðóåìîñòè, ìíîãîóðîâíåâîñòè è ïàðàëëåëüíî-
ñòè îáðàáîòêè äàííûõ, ÷òî ïîçâîëÿåò ðàçðàáîò÷èêó
Îáìåí äàííûìè ñ óñòðîéñòâîì îñóùåñòâëÿåòñÿ ïî (ïîëüçîâàòåëþ) ñîçäàâàòü ôóíêöèîíàëüíûå ñðåäñòâà
ñëåäóþùåìó àëãîðèòìó: â îêíà äëÿ ââîäà òåêñòà (ïà- âû÷èñëèòåëüíîé òåõíèêè äëÿ ïðîèçâîëüíîãî àëãîðèò-
ðàëëåëüíî êíîïêàì «ââåäèòå 1-é îïåðàíä» è «ââåäè- ìà, îáåñïå÷èâàÿ ïðè ýòîì âîçìîæíîñòü àäàïòàöèè â
òå 2-é îïåðàíä») çàíîñÿòñÿ îïåðàíäû, êîòîðûå âõîäÿò çàâèñèìîñòè îò âûïîëíÿåìîé çàäà÷è (àëãîðèòìà).
â äèàïàçîí ïðåäñòàâëåíèÿ ÷èñåë ñòàíäàðòà IEEE-754; Ìîäèôèöèðîâàí èçâåñòíûé ëîãèêî-èíôîðìàöèîí-
íàæèìàþòñÿ âûøåîáîçíà÷åííûå êíîïêè, ÷òî ïðèâî- íûé ïîäõîä ê ïðîåêòèðîâàíèþ ïðèìåíèòåëüíî ê ðå-
äèò ê ôîðìèðîâàíèþ è îòîáðàæåíèþ 32-ðàçðÿäíûõ êîíôèãóðèðóåìûì óñòðîéñòâàì íà ÏËÈÑ, êîòîðûé
Òåõíîëîãèÿ è êîíñòðóèðîâàíèå â ýëåêòðîííîé àïïàðàòóðå, 2007, ¹ 3
19
ÝËÅÊÒÐÎÍÍÛÅ ÑÐÅÄÑÒÂÀ: ÈÑÑËÅÄÎÂÀÍÈß, ÐÀÇÐÀÁÎÒÊÈ
ïîçâîëÿåò óñòàíîâèòü îäíîçíà÷íîå ñîîòâåòñòâèå ìåæ- ÈÑÏÎËÜÇÎÂÀÍÍÛÅ ÈÑÒÎ×ÍÈÊÈ
äó îáúåêòàìè ëîãèêî-èíôîðìàöèîííîé ìîäåëè — àë- 1. Estrin G. Organization of computer system: the fixed plus
ãîðèòìàìè, ôðàãìåíòàìè àëãîðèòìîâ è èõ èíôîðìà- variable structure computer // Proc. Western Joint Computer Conf.—
öèîííî-êîäîâûìè ïðåäñòàâëåíèÿìè íà âñåõ óðîâíÿõ 1960.— N 5.— P. 33—40.
èåðàðõè÷åñêîé ñèñòåìû, êàêîé ïðåäñòàâëÿåòñÿ ïðî- 2. Ìèêðîïðîöåññîðíûå ñèñòåìû îáðàáîòêè èíôîðìàöèè /
åêòèðóåìîå óñòðîéñòâî. À. Â. Ïàëàãèí, Å. Ë. Äåíèñåíêî, Ð. È. Áåëèöêèé, Â. È. Ñèãàëîâ.—
Âåðèôèêàöèÿ ðàçðàáîòàííûõ áëîêîâ â ðåàëüíîé Ê.: Íàóê. äóìêà, 1993.
ñðåäå îñóùåñòâëÿåòñÿ ñ ïîìîùüþ ïðîãðàììíîãî êîì- 3. Cosoroaba A., Rivoallon F. Achieving higher system performance
ïëåêñà, êîòîðûé âêëþ÷àåò â ñåáÿ äðàéâåð óñòðîéñòâà, with the virtex-5 family of FPGAs / Xilinx Inc., White Paper WP245
áèáëèîòåêó ôóíêöèé äëÿ ðàáîòû ñ äðàéâåðîì, ïðî- (v1.1), May 17, 2006 / Available at http: // www.xilinx.com.
ãðàììó ñ ìîäóëÿìè äëÿ âåðèôèêàöèè êàæäîãî áëîêà 4. Ïàëàãèí À. Â. Ïåðñïåêòèâû ðàçâèòèÿ è âîïðîñû òåîðèè
â îòäåëüíîñòè. Ïðè ýòîì ñóùåñòâåííûì äîñòîèíñòâîì ïðîåêòèðîâàíèÿ ìèêðîïðîöåññîðîâ è ìèêðîÝÂÌ // ÓÑèÌ.—
1982.— ¹ 3.— Ñ. 24—29.
ïðîãðàììû ÿâëÿåòñÿ îòîáðàæåíèå âåêòîðîâ çíà÷åíèÿ
5. Ïàëàãèí À. Â., Îïàíàñåíêî Â. Í. Ðåêîíôèãóðèðóåìûå âû-
â ôîðìàòàõ â äâîè÷íîé è øåñòíàäöàòåðè÷íîé ôîðìå, ÷èñëèòåëüíûå ñèñòåìû.— Ê.: Ïðîñâ³òà, 2006.
÷òî ïîçâîëÿåò èñïîëüçîâàòü ýòè çíà÷åíèÿ â ñèñòåìå 6. Ñåðãèåíêî È. Â., Øèëî Â. Ï. Çàäà÷è äèñêðåòíîé îïòèìèçà-
ìîäåëèðîâàíèÿ ModelSim, êîòîðàÿ îòîáðàæàåò ÷èñëî öèè. Ïðîáëåìû, ìåòîäû ðåøåíèÿ, èññëåäîâàíèÿ.— Ê.: Íàóê. äóì-
ñ ïëàâàþùåé òî÷êîé òîëüêî â âèäå âåêòîðà çíà÷åíèÿ. êà, 2003.
Âåðèôèêàöèÿ è òåñòèðîâàíèå ðàçðàáîòàííûõ ôóíê- 7. Ïàëàãèí À. Â., Îïàíàñåíêî Â. Í., Ëèñîâûé À. Í. Ïðîåêòè-
öèîíàëüíûõ áëîêîâ ïîäòâåðäèëè êîððåêòíóþ ðàáîòó ðîâàíèå ðåêîíôèãóðèðóåìûõ ñèñòåì íà ÏËÈÑ / Òð. Íàó÷.-ïðàê-
áëîêîâ, êîòîðûå ìîãóò áûòü èñïîëüçîâàíû ëþáû- òè÷. êîíô. «ÑÈÝÒ-2006». Ò. 1.— Îäåññà.— 2006.— Ñ. 164.
ìè ïîëüçîâàòåëÿìè â ñâîèõ ïðîåêòàõ â âèäå ãîòîâûõ 8. Ñîëäàòîâ Â. Ï. Ïðîãðàììèðîâàíèå äðàéâåðîâ Windows.—
IP-Core. Ì.: ÎÎÎ «Áèíîì-Ïðåññ», 2004.

Ä. ò. í. Â. Ë. ÊÎÑÒÅÍÊÎ, Ñ. Î. ÆÀÐÎÂÖÅÂ Äàòà ïîñòóïëåíèÿ â ðåäàêöèþ


06.10 2006 ã. — 14.02 2007 ã.
Óêðàèíà, Îäåññêèé íàöèîíàëüíûé ïîëèòåõíè÷åñêèé óíèâåðñèòåò Îïïîíåíò À. È. ÐÀÄÊÅÂÈ×
E-mail: staz@normaplus.com (ÍÈÈ ìèêðîïðèáîðîâ, ã. Êèåâ)

ÌÍÎÃÎÊÀÍÀËÜÍÎÅ ÂÛÑÎÊÎÒÎ×ÍÎÅ ÓÑÒÐÎÉÑÒÂÎ


ÓÏÐÀÂËÅÍÈß ÍÅÉÐÎ×ÈÏÎÌ
Ïðåäëîæåíî ìíîãîêàíàëüíîå âûñîêî- ïðåîáðàçîâàíèÿ è òî÷íîñòè çàäàíèÿ çíà÷åíèé âåñî-
òî÷íîå óñòðîéñòâî óïðàâëåíèÿ íåéðî- âûõ êîýôôèöèåíòîâ.
÷èïîì, ïîçâîëÿþùåå ìèíèìèçèðîâàòü Èçâåñòíî, ÷òî äëÿ ìèíèàòþðèçàöèè íåéðî÷èïà ïðè-
ïîãðåøíîñòü ïðè ôîðìèðîâàíèè çíà÷å- ìåíÿþòñÿ âíåøíèå óñòðîéñòâà óïðàâëåíèÿ [1]. Òàêèå
íèé âåñîâûõ êîýôôèöèåíòîâ ñèíàïñîâ è óñòðîéñòâà ïîçâîëÿþò íå òîëüêî çàäàâàòü è âîññòà-
íàâëèâàòü çíà÷åíèÿ âåñîâûõ êîýôôèöèåíòîâ, íî è
ðàñøèðèòü äèàïàçîí èõ ðàáî÷èõ çíà÷å- îáó÷àòü íåéðîñåòü. Îäíàêî ïðèìåíåíèå òàêèõ óñòðîéñòâ
íèé. äëÿ óïðàâëåíèÿ ìàòðèöåé ñèíàïñîâ íåéðîñåòåé îãðà-
íè÷åíî áûñòðîäåéñòâèåì âûõîäíîãî ýëåìåíòà.
Ñîâðåìåííûå íåéðî÷èïû ñòðîÿòñÿ íà îñíîâå ñëîæ- Èçâåñòíû óñòðîéñòâà ôîðìèðîâàíèÿ âðåìåííûõ
íûõ ìíîãîíåéðîííûõ ñåòåé, èñïîëüçóþùèõ êîìáè- èíòåðâàëîâ êîììóòàöèîííîãî òèïà, ïîçâîëÿþùèå
íèðîâàííóþ òåõíîëîãèþ, îñíîâàííóþ íà ïðèìåíåíèè óìåíüøèòü ïàðàçèòíóþ çàäåðæêó, âîçíèêàþùóþ â
â îäíîì íåéðî÷èïå öèôðîâûõ è àíàëîãîâûõ ñõåì [1], òðàêòå ïðåîáðàçîâàíèÿ ïðè ôîðìèðîâàíèè ñðåçà çà-
â ñîñòàâ êîòîðûõ âõîäÿò íåéðîíû, ìàòðèöà ñâÿçåé, äàþùåãî èìïóëüñà [2, 3].
ñõåìû îáó÷åíèÿ è âîññòàíîâëåíèÿ, ÀÖÏ è ÖÀÏ.  Çàäà÷à èññëåäîâàíèé ñîñòîÿëà â ìèíèìèçàöèè
íàñòîÿùåå âðåìÿ äëÿ óíèâåðñàëèçàöèè íåéðî÷èïîâ è ïîãðåøíîñòè çíà÷åíèé âåñîâûõ êîýôôèöèåíòîâ çà
ïîâûøåíèÿ ãèáêîñòè èõ íåéðîñåòåé èñïîëüçóþò ñè- ñ÷åò îïòèìèçàöèè âûõîäíûõ ýëåìåíòîâ, ñîãëàñîâà-
íàïñû, îáåñïå÷èâàþùèå çíà÷åíèÿ âåñîâûõ êîýôôè- íèÿ âûõîäíîãî ñèãíàëà ñ âõîäàìè íåéðî÷èïà, ñíèæå-
öèåíòîâ â øèðîêîì äèàïàçîíå. Ïîýòîìó ìèíèìàëü- íèÿ âðåìåííîé çàäåðæêè ïðè ôîðìèðîâàíèè ñðåçà
íàÿ ïîãðåøíîñòü, âíåñåííàÿ â çíà÷åíèå âåñîâîãî êî- çàäàþùèõ èìïóëüñîâ.
ýôôèöèåíòà ïðè åãî ôîðìèðîâàíèè, ïðèâåäåò ê çíà- Íà îñíîâå àíàëèçà ïðèíöèïîâ ïîñòðîåíèÿ èçâåñò-
÷èòåëüíîìó ñíèæåíèþ òî÷íîñòè âû÷èñëåíèé. Ñëåäî- íîãî ìíîãîêàíàëüíîãî ôîðìèðîâàòåëÿ çàäàþùèõ èì-
âàòåëüíî, àêòóàëüíûìè ïðåäñòàâëÿþòñÿ èññëåäîâàíèÿ ïóëüñîâ íàìè óñòàíîâëåíî, ÷òî ìèíèìóì ïàðàçèòíîé
âîçìîæíîñòè ìèíèìèçàöèè ïîãðåøíîñòè ïðè ôîðìè- âðåìåííîé çàäåðæêè, êîòîðàÿ îïðåäåëÿåòñÿ ñóììîé
ðîâàíèè çíà÷åíèé âåñîâûõ êîýôôèöèåíòîâ ñèíàïñîâ. ïåðåõîäíûõ ïðîöåññîâ ïîñëåäîâàòåëüíî ñîåäèíåííûõ
Íåîáõîäèìî ó÷èòûâàòü òàêæå, ÷òî ïðè ðàçðàáîòêå ýëåêòðîííûõ áëîêîâ â òðàêòå ïðåîáðàçîâàíèÿ, äîñòè-
íåéðî÷èïà çàäà÷ó ïîâûøåíèÿ ïðîèçâîäèòåëüíîñòè ãàåòñÿ çà ñ÷åò âêëþ÷åíèÿ äâóõñòóïåí÷àòîé ïàìÿòè íà
íåëüçÿ îòðûâàòü îò çàäà÷è ñíèæåíèÿ ïîãðåøíîñòè áàçå Ò-òðèããåðà è Ä-òðèããåðà ñ äèíàìè÷åñêèì ñèí-
Òåõíîëîãèÿ è êîíñòðóèðîâàíèå â ýëåêòðîííîé àïïàðàòóðå, 2007, ¹ 3
20