1ã€ç®ã¯ããã®è£œåã«å¯Ÿããå³ããplisovodovã®ãã軜çãªæ 床ã§ãã äœããã®çç±ã§ãDSP Builderã¯ãåŠçåããã§ãããšèããããŠããŸãã ç¶æ³ã¯Delphiã®å ŽåãšãŸã£ããåãã§ãã ããã«ãDSP Builderã«å¯Ÿãããã®å§¿å¢ã¯ãActive HDLã·ã§ã«ã«å¯Ÿããç±å¿ãªã¬ãã¥ãŒã®èæ¯ã«å¯ŸããŠç¹ã«ç解ãããããã®ã§ãã 確ãã«ãããã¯ãplisovodstvoãšä¿¡å·åŠçã«ç²ŸéããŠããå°é家ãéåžžã«ãŸãã§ãããšããäºå®ã«ãã£ãŠéšåçã«èª¬æã§ããŸãã ãã®ãããªå°é家ã¯åºåçã§ããã3æ¡ã®zpãæã£ãŠããŸãã æ®ã-ãã®äžãŸãã¯ãã®äžã åè ã¯ãªããã®ããã«ããŒããå¿ èŠãªã®ãç解ã§ããŸããïŒãŸããããçš®ã®SimulinkããããŸãïŒïŒããããŠåŸè ã¯ã¢ã«ãŽãªãºã ãã¹ã«ã«ããããããããã®å®è£ ã¯ç§ã®ããžãã¹ã§ã¯ãããŸããïŒã
2çªç®ã®çç±ã¯ã3ã€ã®éåžžã«ç°çš®ã®ããã°ã©ã ãšç°å¢ã®æã§ãã ããŒãžã§ã³ã®éäºææ§ãšããã€ãã®å®å šã«å¥åŠãªççŸã䌎ã次ã®ãã³ã¹ã ç¹ã«ãDSP Builderã®ãã€ã³ããã©ã³ã¯ãã€ã³ã¹ããŒã«ãããMatlabã«æ°ä»ãããå°ãªããšãããªããäœãããã®ãã¯æåçã§ãã
ããããèè èªèº«ãéåžžã«å®å®ããæãèŠã€ããŸããã ãããã£ãŠã11.0th Quartusã«ä»å±ããããŒãžã§ã³ã«ã€ããŠã®ã¿èª¬æããŸãã 幞ããªããšã«ã圌女ã¯ç°¡åã«èŠã€ããŠãèè ã«å¿ããæãããŠããMatlabaã«ããã¿ã€ããŠããŸãïŒèè ã®æèŠã¯ãæåãªããŒãžã§ã³6.5ã®åŸã§ããïŒ ã€ã³ã¹ããŒã«ãæ£åžžã«å®äºãããšã2ã€ã®ã©ã€ãã©ãªïŒAltera DSP Builder Blocksetããã³Altera DSP Builder Advanced BlocksetïŒãSimulinkã«è¡šç€ºãããŸãã Matlabã®ãã«ãã®å¯Ÿå¿ããã»ã¯ã·ã§ã³ãšäŸãžã®ãªã³ã¯ã äŸã¯éåžžã«æ確ã§ãããplisovodamãééããã»ãšãã©ãã¹ãŠã®å žåçãªã¿ã¹ã¯ãã«ããŒããŠãããšèšããããåŸãŸããã
DSP BuilderãQuartusã«ãã³ãã«ããŠããŠãã¡ã¬ãã¡ã³ã¯ã·ã§ã³ãã€ã³ã¹ããŒã«ããåã«ïŒãããŠãããããããããã§ããå ŽåïŒãã¡ã¬ãã¡ã³ã¯ã·ã§ã³ãéžæããå¿ èŠããããŸãã Matlabã®ã³ãã³ããŠã£ã³ããŠã«ã³ãã³ãalt_dspbuilder_setup_megacoreãå ¥åãã以äžãååŸããŸãã
ã
ããŒã ã¯ééããªãééããªãåäœããŸããããã¯ãéåžžã«éãããæ°ã®ã¡ã¬ãã¡ã³ã¯ã·ã§ã³ãSimulinkã«ããã¿ã€ããŠããïŒåæã«æ£ãããµããŒãããŠããïŒãšããäºå®ã«ãããã®ã§ãã æãå¯èœæ§ãé«ãã®ã¯ãå³ã«ç€ºãããŠãã6ã€ãé€ã ãããã¯ãããã¯ã¢ããããŠå€±æãããã®ã¯äœããããŸããã ããã§ã誰ããSimulinkããµããŒãããŠãããšæããŠããå Žåã¯ããµããã£ã¬ã¯ããª<Quartusãã€ã³ã¹ããŒã«ãããŠããå Žæ> \ã©ã€ãã©ãªããäžæãã£ã¬ã¯ããªã«ãã¡ã€ã«ãæåã§è»¢éãã alt_dspbuilder_setup_megacoreãäœåºŠãå®è¡ã§ããŸãã ä»ã®äœããããã¿ã€ãå¯èœæ§ããããŸãã
ãããã®ãããã¯ã®äœ¿çšã¯ãSimulinkã«ããçšåºŠåºæã§ãã äºå®ãæåã¯Simulinkã¯äœ¿çšããã¡ã¬ãã¡ã³ã¯ã·ã§ã³ã«å¯ŸããŠéžæãããã©ã¡ãŒã¿ãŒãèªèããŠããªããããæåã¯ã¢ãã«ã®ããã©ãã¯ããã¯ã¹ãã®ããã«èŠããŸãã
ãã®åŸããããã¯ãªãã¯ãããšããã®ã¡ã¬ãã¡ã³ã¯ã·ã§ã³ã®æšæºã§ããã»ããã¢ãããŠã£ã³ããŠã衚瀺ãããŸããããã¯ãMega Wizard Plug-In Managerã§100å衚瀺ãããŸããã ãããä»ããã©ã¡ãŒã¿ãéžæããåŸãããããŒãžã£ãã¯ãSimulinkçšã®ãã¡ã€ã«ãçæããå¿ èŠãããããšãèªèããŸãã ãããŠãèŠããããªãã®ãããã¯ã¯éåžžã®Simulinkovskyãããã¯ã«å€ãããŸãïŒ
DSPbuilderã¯æåãããã€ãã®ãã¹ã¿ãŒã¿ãŒã¯ãžã©ãããµããŒãããŠããŸãã ãã®ãµããŒãã¯ãããªãã®é»çãã©ãã«æ¥ç¶ãããŠãããããã¿ã³ãã©ãã«ããããSmaããã³ã°ããŠããïŒå¶æ°ïŒïŒããšãDSPbuilderããç¥ã£ãŠããããšããäºå®ã«èŠçŽãããŸãã èè ã®é©ããããšã«ããã®ãªã¹ãã«ã¯ã4th Stratixã®äœ¿ãæ £ããããŒãããããŸãã ãããããªã¹ãã¯éåžžã«éãããŠããŸãã ããšãã°ãèè ã¯çŸåšãCyclone IVEã·ãªãŒãºã®ç³ã䜿çšããDE2-115ããŒãã䜿çšããŠããŸãã ãããŠåœŒå¥³ã¯ãæ²ããããªããã®ããŒãžã§ã³ã§ã¯ãµããŒããããŠããŸããã
çåãçããŸããæã§ããŒãã®èª¬æãè¿œå ããããšã¯å¯èœã§ããïŒ çããŸãã ãŸããæåã«ã誰ããããå¿ èŠãšããŸããã ãããŠã第äºã«ãããã¯éåžžã«ç°¡åã«è¡ãããŸãã
<DSPbuilderãç«ã£ãŠããå Žæ> \ lib \ boardsupport \ boardsãã£ã¬ã¯ããªã«ã¯ããŒã«ããæ¡åŒµåã.boardã®ãã¡ã€ã«ã確èªããŸãã 次ã«ãæãé¢é£æ§ã®é«ããã¶ãŒããŒãïŒç§ã®å Žåã¯Cyclone_III_EP3C120.boardïŒã説æãããã¡ã€ã«ã®1ã€ãã³ããŒããéããŠç·šéããŸãã ãã¡ã€ã«åœ¢åŒã¯éåžžã«æ確ãªã®ã§ãããã«é¢çœããªããŸãã ããã§ãã¯ã£ããããªãå Žåã¯ãDSP Builder HandbookãVolume 2ïŒDSP Builder Standard Blockset p.137ãéããŠèªãã§ãã ããã
ãã¹ãŠãæ確ã§ãããšããäºå®ã«ãããããããæ°ããããŒãã®èª¬æã¯ãããã«ããdspbuilderã§ãšã©ãŒãçºçããŸãã...ããªã©ã®äŒè°ã§ã¡ãã»ãŒãžãèœæžãããªãããã«ãéåžžã«æ éã«è¡ãå¿ èŠããããŸãã åããã£ã¬ã¯ããªå ã®ããŒãã€ã¡ãŒãžãå€æŽããããšãã§ããŸãã 次ã«ãæ°ããããŒããDSPbuilderã«å ±åããå¿ èŠããããŸãã ããã¯ã alt_dspbuilder_createComponentLibraryã³ãã³ãã䜿çšããŠè¡ãããŸãã 解決ãããïŒãããŠãããããšã©ãŒã§é£ã³åºããŸãããããªãã¯ãããæã¡è² ãããªããã°ãªããŸããïŒãããªãã¯ããŒãããboardsããµãã©ã€ãã©ãªã«åãã§èŠãã§ãããã ã¡ãªã¿ã«ãåæ§ã®æ¹æ³ã§ãæ°ãããã€ããªã³ã³ããŒãã³ããããŒãã«ãã蟌ãããšãã§ããŸãã ããšãã°ãéæšæºã€ã³ãžã±ãŒã¿ããžã§ã€ã¹ãã£ãã¯ãã¿ã³ãã¹ã©ã€ããŒãå€éšãã¹ãªã©ã
DSP Builderã®äž»ãªå©ç¹ã¯ãFPGAçšã®ãããžã§ã¯ãã®æºåã ãã§ãªããSimulinkãçµäºããã«ãã©ã€ãããŒããŠã§ã¢ãã§ããããã¢ããããŒãããã³ãã§ãã¯ã§ããããšã§ãã RAMãšROMã®åæå 容ãMatlabå€æ°ããçŽæ¥æºåããäžæ£ã«äœæããããŠãŒãã£ãªãã£ã䜿çšãããããã深床ãšãšã³ã³ãŒãã£ã³ã°ã§æ··ä¹±ããæ¹æ³ã¯ãããã«é¢é£ããŠããŸãã ãããŠãéèŠãªããšã¯ã絶ãéãªãèœäžãããModelsimãã®ããã«äœåããŒãžãã®ããã¹ããã¯ãŒã¯ãã³ãããèµ°ãããã®ã§ã¯ãªããSimulinkã«ããéåžžã«äŸ¿å©ãªã°ã©ãã£ãã¯ããŒã«ã䜿çšããŠãããžã§ã¯ãããã§ãã¯ããããšã§ãã
DSP Builderã¯ããã¹ãçšã®2ã€ã®ããŒã«ãæäŸããŸãã 1ã€ç®ã¯ãHILãïŒããŒããŠã§ã¢ã€ã³ã¶ã«ãŒããããã¯ãã¢ãã«å ã®å®éã®ããŒããŠã§ã¢ããšããŠãã·ã¢èªã«ç¿»èš³ã§ããŸãïŒã ããã§ã¯ããŸã調æ»äžã®ã·ã¹ãã ã®ãããžã§ã¯ããçµã¿ç«ãŠãŠãããã·ã¹ãã ãHILãµãã·ã¹ãã ã«ãªããã«ããŒãã¢ãã«ãäœæããå ¥åãšåºåãå ¥åãšåºåã«ãã£ãŠããããã¢ãã«ç©ºéããåé¢ããå¿ èŠããããŸãã è€éã«èãããŸããããã¥ãŒããªã¢ã«ããFreqSweepã®äŸãéããšããã¹ãŠãæããã«ãªããŸãã
ã¡ãªã¿ã«ãäžéšã®ããªãœããã¯ãHILãSignalTapã䜿çšããŠãããšèããŠããŸãã å®éãSignalTapã¯HILæ¹æ³è«ãšã¯é¢ä¿ãããŸããã ãã ããSignalTapã¯DSP Builderã§ã䜿çšã§ããŸããããã¯2çªç®ã®æ¹æ³ã§ãã SignalTapã䜿çšããã«ã¯ãAltLabãµãã©ã€ãã©ãªã®ãSignalTap II Logic Analyzerããããã¯ã䜿çšããå¿ èŠããããŸãã SignalTapã®äœ¿çšã«ã¯å¶éããããŸã-ã¯ããã¯ä¿¡å·ã¯1ã€ã ãã§ãïŒæ®ãã¯éåžžã®å ¥åãšããŠèªèãããŸãïŒã ããããæ£çŽãªãšãããSignalTapã§è€æ°ã®ã¯ããã¯ãšãªã¢ã䜿çšããé »åºŠã¯ã©ããããã§ããïŒ
çæãããã³ãŒãã®æé©æ§ã«ã€ããŠã DSPbuilderã¯ãå®éã«ã¯ãSimulinkã®ã°ã©ãã£ãã¯ã¹ããéžæããHDLã³ãŒããžã®ãã©ã³ã¹ã¬ãŒã¿ãŒã§ãã çæããããããžã§ã¯ããéããã¡ã€ã³ãã¡ã€ã«ã確èªããŸãã DSPbuilderã¯ãSimulinkãããžã§ã¯ãã®ãããã¯æ¥ç¶ãåã«å£é ã§ã説æãããŠããããšãããããŸãã HDLã³ãŒããžã®æå移æ€ã§ãåãããšãã§ããŸãã ãããžã§ã¯ãã®æé©æ§ã®ã¬ãã«ã¯ããªã次第ã§ãã ããšãã°ãCICãã£ã«ã¿ãŒã«ã¡ã¬ãã¡ã³ã¯ã·ã§ã³ã䜿çšãã-1ã€ã®çµæã説æãèªãã®ãé¢åããŸãã¯åæ¥çãªæš¹ç®ãå°ç¡ãã«ããŠæã§æžãããšã«ããããªã-å¥ã®çµæã ãã¹ãŠåãïŒ
çµè«ãšããŠããããã¯ã®æ¥ç¶ã«ã€ããŠç°¡åã«èª¬æããŸãã èè ããã§ã«åé ã§è¿°ã¹ãããã«ã圌ã®æèŠã§ã¯ãDSPbuilderã¯èª°ã«ãæ°ä»ãããŠããªãé©åœã§ãã ãããã£ãŠãDSPbuilderããŸã£ãã䜿çšãããAHDLããã³VerilogãQuartusãSynplicityãäžè¬çã«ååšããããšãåŸã ã«å¿ããŠããå Žåã«ãããã¯è¯ããã©ãŒã ãšèŠãªãããŸãã ãã®ã¢ãããŒãã§ã¯ãçè«äžã
ãšããã§ãDSPbuilderã§ã¯ãSimulinkãã¬ãŒã ã¯ãŒã¯ãããããžã§ã¯ãèšå®ãå®å šã«å¶åŸ¡ã§ããŸãã ãããè¡ãããã«ãAltLabãµãã©ã€ãã©ãªã«å¯Ÿå¿ãããããã¯ããããŸãã DSPbuilderã§ã¯ãSOPC Builderã䜿çšããããšãã§ããŸãïŒéåžžã«è匱ãªç¹æ§ãæã€ããã»ããµãé«äŸ¡ãªãã©ã°ã€ã³ã«æ¿å ¥ããã®ã奜ããªäººãªãïŒã ããããèè ã¯æ£ãã質åãè³ã«ããŸããå€çãšãã€é£çµ¡ãåããªããã°ãªããªãã®ããã©ã®ããã«ããŠç°å¢ããæãåºããªãã®ã§ããããïŒ åãã€ãŒãµããããã€ãŒãµããããcom-portãªã©ãäœ¿çš ãªã© å®éããã®ããã«ã¯ãé©åãªã³ã³ããŒãã³ããèªåã§èšè¿°ããå¿ èŠããããŸãã ããã§ã¯ã3ã€ã®æ¹æ³ã§è¡åã§ããŸãã
ç¬èªã®ã¡ã¬ãã¡ã³ã¯ã·ã§ã³ãäœæããããã®æåã®ãæãå°é£ã§ã»ãŒäžå¯èœãªæ¹æ³ã¯ãIPèªå®ããã»ã¹ïŒç¡æã§ã¯ãªããæ£ãããšç¥ã£ãŠããç§ã®æèŠã§ã¯ïŒãçµãŠãããäžèšããèªã¿ãã ããã ãšããã§ããããªã«çŽ æŽãããæ¹æ³ã§ã¯ãããŸããã èè ã¯ãFPGAçšã®CADãœãããŠã§ã¢ã®ã¡ãŒã«ãŒã®1ã€ã«æ°ããã¡ã¬ãã¡ã³ã¯ã·ã§ã³ãäœæããã®ã«å°ãæéãè²»ãããŸããã ããããããªãã¯ããã ãã«å¯ŸåŠããå¿ èŠããããŸãã
2çªç®ã®æ¹æ³ã¯ãSimulinkã䜿çšããŠæ°ãããããã¯ãäœæããããšã§ãã ããããçã®ããªãœããã¯ãã®ãããªæ¹æ³ã軜cornããŠããŸãã
3çªç®ã®æ¹æ³ã¯ãHDLã³ãŒããSimulinkã®ãã¬ãŒã ã¯ãŒã¯ã«ãã©ãã°ããããšã§ãã ãã®ããã«ãDSPbuilderã¯ãHDL Importããããã¯ãæäŸããŸãã ããã¯ããã»ã¹å šäœã§ãããèè ã¯åŸã§å¥ã®æçš¿ã§èª¬æããããšãã§ããŸãããããã¯æãçŸå®çãªæ¹æ³ã§ãããäžåºŠä¿¡ãã䟡å€ããããŸãã