vita Research Courses Hobby Contact

Research Interest

LDPC Project

LDPC Paper

PAR for OFDM

Methodology Project

Viterbi Project

SoC ²Õ¬ã¨s¤è¦V

¥»²Õ¬ã¨s¤è¦V¦³¤T¡G
¤@¡B³nµwÅé¨ó¦P³]­p¤èªk(Hardware/Software codesign)
¤G¡B¨t²Î¦w¥þ©Ê(Security)ªº¬ã¨s
¤T¡B§C¥\²v(Low Power)ªº¬ã¨s
¤À§O²¤¶¦p¤U

¤@¡B¥H RTOS ¬°¤¤¤ßªº¨t²Î´¹¤ù¤W¤§ SystemC ³nµwÅé¨ó¦P³]­p¤èªk
(A RTOS Centered SoC Hardware/Software co-design Methodology based on SystemC)

²¤¶
¥Ñ©ó²öº¸©w«ß¤´¥¼¹F¨ì¨äª«²z·¥­­¡A¦]¦¹IC ¤¤ªº¹q´¹Å骺±K«×¤´µM¥H¨C¤Q¤K­Ó¤ë¦¨ªø¤@­¿ªº³t«×§Ö³t¦¨ªø¡Aªñ¦~¨Óªº¶°¦¨«×¤v¸g¹F¨ì¤@­Ó¡u¨t²Î¡vªº³W¼Ò¡A¦]¦¹ SoC (System On Chip) ªº·§©À¹Eº¥¦¨¥D¬y¡A¦Ó¤@­Ó¨t²Î¤S¥]§t¤F³nÅé»PµwÅé¡A¦]¦¹¦b¹L¥hªº¤Q¦~·í¤¤¡A³nµwÅé¨ó¦P³]­pªº¬ã¨s¦¨ªøªº«D±`¨³³t¡CµM¦Ó¥Ø«e·~¬É¥D­n±Ä¥Îªº³]­p¤èªk½× (Methodology) ¤´µM¦h±Ä¶Ç²Î³nµwÅé¬É½u¤À©úªº³]­p¤èªk¡A±q´y­z°ÝÃD©Ò¥Îªº»y¨¥´N¥i¨£¤@´³¡F³nÅé´X¥G³£¬O¥H C/C++ ¼¶¼g¡A¦ÓµwÅé´X¥G¤S³£¬O¥H Verilog / VHDL ¼¶¼g¡C¦bÂù¤è·¾³qªº¬É­±¤W¤´¥¼¦³¤@®M¦³®Ä²vªº¨t²Î¤èªk¨Ó²Î¦X³nµwÅé¡C¦]¦¹¥»¬ã¨s±N´£¥X¤@ºØ³nµwÅé¤@³eªº¨t²Î³]­p¤èªk¡A©Ò±Ä¨úªº»y¨¥±N¨Ï¥Î¥Ø«e·~¬É¤wº¥¨ü­«µøªº SystemC¡A¨Ó³]­p³nÅé»PµwÅé¡C°£¦¹¤§¥~¡A¥Ñ©ó¨t²Îªº½ÆÂøµ{«×³v¦~´£¤É¡A¨t²Î¸ê·½ªººÞ²z¤]³vº¥½ÆÂø¡A¦]¦¹§Y®É§@·~¨t²Î(RTOS: Real Time Operating System) ¤w¸g³vº¥¦¨¬°¤@­Ó´O¤J¦¡¨t²Îªº¥²³Æ¤¸¥ó¡A¦]¦¹§Ú­Ì¤]±N¥H§Y®É§@·~¨t²Î¬°®Ö¤ß¨Óµo®i»P©Ò¦³³nµwÅé³q°T¤¸¥ó¶¡·¾³qªº¼Ð·Ç¤¶­±¡C¥»¬ã¨s©Ò±N±Ä¥Îªº¤u¨ã»P³nÅé¡A±NºÉ¥i¯àªº¨Ï¥Î²{¦³¶}©ñ¦¡­ì©l½X(Open Source) ªº³nÅé´¼°]¥H¤Îª¿´¼°]¡A¥H¾¨¥i¯àªºÁYµu¬ãµo®Éµ{¡A¨Ã¥B¤]¤~¤£·|¹ï¬Y¨Ç¯S©w¼t°Óªº³nµwÅé²£«~²£¥Í¨Ì¿à©Ê¡C

³]­p¬yµ{
1.Software Engineering
¥H³nÅé¤uµ{¤èªk©w¸q¨t²Î³W®æ(Specification)
2. Software Simulation
¦b¤u§@¯¸©ÎPC¤W«Ø¥ß¯Â³nÅé¹ê§@³W®æ®Ñ¤¤©Ò©w¸q¤§¤º®e
3. RTOS Enabled Software Simulation
¦bµwÅéµo®iªO¤W(¦pAltera Excalibur EPXA10)¥ÎRTOS ¨Ó°õ¦æ¸Ó³nÅé
4.Hardware/Software Partitioning
¬°¥Ø«e¬ã¨s­«¤ß¡A±N³]­p¦Û°Ê¤Æªº¤u¨ã±NC(++)µ{¦¡ªº­t¸ü³Ì­«ªº³¡¤ÀÂà´«¦¨ SystemC¡A¥H§Q«áÄò¨BÆJÂà´«¦¨µwÅé
¡@5.Embedded Software Simulation
§Q¥Î¼ÒÀÀªº¤è¦¡°õ¦æÂà´«¹Lªº SystemC ¼Ò²Õ
6.Embedded Hardware Simulation (FPGA)
±NSystemC ¼Ò²Õ¿N¨ì FPGA ¤W¦A§@¾ãÅé¼ÒÀÀ
7.ASIC Realization
±N¿N¿ý¦bFPGA ¤Wªº¼Ò²Õ¹ê§@¦¨IC¡A¦p¦¹¨t²Îªº³nµwÅ鳡¤À§¡¹ê²{


¤G¡B¦w¥þ©Êªº¬ã¨s(Security)

²¤¶
²{¤µ¤£½×¨º­Ó³q°T¨t²Î¡A³£·Q§Q¥ÎµL½uºô¸ôªº³q°T¨Ó¼W¥[¥L­Ìªº¸ê®Æ¶Ç¿é³t²v©M¤è«K©Ê¡C¦ý¬O¨Ï¥Îºô¸ô¨Ó¶Ç°e¸ê®Æ·|¼W¥[¤@¨Ç¦MÀI¡A¯S§O¬O§Q¥ÎµL½u¶Ç¿é¡A§ó¬O¤j¤jªº¼W¥[«OÅ@¸ê®Æªº­«­n©Ê¡C©Ò¥H§Ú­Ì¥²»Ý¦Ò¶q§ó¦hªº±¡ªp¡C²Ä¤@¡A§Q¥Î³nÅé¨Ó¸Ñ¨M¡C¥Ñ©ó¸ê®Æ¶Ç¿é²v¤Ó¤j©Î¬O¸û½ÆÂøªº¦w¥þ¶Ç¿é¨ó©w¡A³o¨Ç»Ý­n¤j¶qªº¹Bºâªº±¡ªp¤U¡A­n¥Î³nÅé¸Ñ¨M´N·|«Ü¨S®Ä²v¡C¦Ó³o¨Ç°ª¶Ç¿é²v©M¤j¶qªº¥æ©ö¡A³£¬O¤@­Ó¨t²Î±`±`·|¹J¨ìªº±¡ªp¡C²Ä¤G¡A¯}¸Ñ²{¦³¦w¥þ©Êªº·s§Þ³N¡C¹³¬O¿ù»~¤ÀªR¡A¯à¶q¤ÀªR¡Kµ¥¡A»Ý­n¨t²Î¥»¨­¦b¹ê§@®É´N¯à³]­pªº§ó¤p¤ß¡A¦Ò¼{ªº§ó¶g¸Ô¡A¬Æ¦Ü¦³´c·Nªº¤H±q¹êÅé³]³Æ¤Wªº¯}Ãa¡A¤]­n¯à°÷¦Ò¼{¦b¤º¡C²Ä¤T¡A·í¨Ï¥ÎµL½u¸Üµ©³q°T®É¡A¦pªG¬O¥Î¤½¶}ªº¶Ç¿é¤¶­±´N«Ü®e©ö³Q¤@¨Ç¦³¤ß¤H¤h±q¤¤ºI¨ú«H¸¹¡CµL½u¦w¥þ¨ó©w¬Û¹ï©ó¦³½u¤è­±ªº¨ó©w¯uªº¬O©|¥¼°·¥þ¡A¤]´N¬O¦p¦¹¡A§Ú­ÌÁÙ¦³«Ü¤j¥h´£¤É®Ä¯àªºªÅ¶¡¡C¦]¦¹¡AµL½×¨º­Ó¦w¥þ¬[ºc³£±N»Ý­n´£¨Ñ¤@­Ó¦³®Ä²v¥B¦³¼u©Ê¯à°÷¥h³B²z¥ô¦óªº§ïÅܪº¦w¥þ¨ó©w¡C§Ú­Ì¥i¥HÅý¨C­Ó¿W¥ßªº³]³Æ³£¯à¦³¦U¦Û¿W¥ßªº¦w¥þ¾÷¨î¡A¯à°÷«O½Ã¦U¦Û­«­nªº¸ê·½¡C¸ò¶Ç²Îªº¦w¥þ¨ó©w¤ñ°_¨Ó¡A­Y¥[¤W³o¶µ¯S©Ê¡A´N¯à´£¨Ñ¤@­Ó§ó¦³¼u©Ê¡A°ÊºAªº¹w¨¾¡B°»´ú¡B¤ÀªRªº¦w¥þÀô¹Ò¡C

¬ã¨s¤è¦V
ªñ¦~¨ÓPHS©M3G¶}©l²±¦æ¡A¦ý¬O¹ï©ó³q°T¦w¥þ¤W¡A«o¨S¦³©ñ¤Ó¦hªº¤ß¤O¦b¤W­±¡A©Ò¥H§Ú­ÌÀ³¸Ó¤£ºÞ¦bµwÅé©Î¬O³nÅé¤W¥[±j¤@¨Ç¦w¥þªº¾÷¨î¡C§Ú­Ì´£¥X¤@­Ó¦³¼u©ÊªºµwÅ饭¥xªº³]­p¤èªk¡A¯à°÷¤ä´©¦hºØªº¥[±Kºtºâªk¡C´O¤J¦¡¨t²Î³q±`³£¦³¥]§t³\¦hªº±Mªù³B²z¾¹¡A©Ò¥H§Ú­Ìªº¡¨ Reconfigurable Interconnect¡¨·|±N¸ê®Æ¤À´²¨ì¦U­Ó±Mªùªº³B²z¾¹¡A¥H¼W¥[¹Bºâ¤Wªº³t«×¡C³oºØ³s±µªº¤è¦¡­«ÂI¦b©ó¦³¼u©ÊªºÂI¹ïÂI³s±µ¡A¦³³oºØ¾÷¨î«á¡A´N¥i¥H¤j¤jªº´£¤É¨t²Î¬[ºcªº¼u©Ê©M¥iÅÜ©Ê¡C
¦]¬°­n¨Ï¥Î³oºØ¡¨ Reconfigurable Interconnect¡¨ªº§Þ³N¡A§Ú­Ì±N·|¸ÕµÛ¥h§âAES¡ADES¡ARSA³o¤TºØ¥[±Kºtºâªkªº¤@¨Ç¦@¦Pªº¹Bºâ´£¥X¡AÅý¥¦­Ì¦@¥Î¥H¸`¬ÙµwÅéªá¶O¡A©ÎµÛ¬O§â¤TªÌ³£·|¥Î¨ìªº¹Bºâ¥ÎµwÅé¹ê°µ¡A¥H¥[³t­«ÂIªº¹Bºâ¡C
§Ú­Ì¤]·|´£¥X¤@­Ó¤è«K¨Ï¥Îªº¨Ï¥ÎªÌ¤¶­±¡A¤]´N¬O´£¨Ñ¤@­Ó¨ç¦¡¡AÅý³]­pªÌ¯àÂǥѨ禡ªº©I¥s¡A©M¶ñ¤J¤@¨ÇÅܼơA´N¯à¨Ï¥Î©Ò§Æ±æªº¥[±Kºtºâªk¡C

ªñ´Á¥Ø¼Ð
¦]¬°§Ú­Ì­n¥Hsoftware/hardware codesign¬°¤è¦V¡A©Ò¥H§Ú­Ì¿ï¾Ü¤FSystemC³o­Ó»y¨¥¡C²{¦b­n§âAES©MDESªºSystemCª©¥»ªºCODE¼g¥X¨Ó¡A¥H§Q©ó°µ¾ã­Ó¨t²Îªºµû¦ô©M¦ô­p¦U­Óºtºâªkªº®Ä¯à¡C

¤T¡B§C¥\²v(Low Power)ªº¬ã¨s¤è¦V¡G

¦bLow Powerªº§Þ³N¼h­±¤W¡A¤j­P¥i¤À¬°system level¡Aarchitecture level¡Acircuit level¤TºØ¶¥¼h¡A¥Ø«e¥i¥H¬Ý¨ìªº¬ã¨s³£°¾­«¦bcircuit level¤W¡A³£¬O¥H¦p¦ó¦b¹êÅé¹q¸ô¤W§@§ï¶i¨Ó¹F¨ìpower reductionªº¥Øªº¡C§Ú­Ì¹êÅç«Ç¥Hsystem levelªº§C¥\²v³]­p¬°¥Ø¼Ð¡A¬ã¨s¦p¦ó¦b§ó°ªªº¶¥¼h´N§ä¥X¤@®M­°§C¥\²vªº¤è¦¡¡A¨Ã¥B¦b§@RTL¹q¸ô³]­pªº®É­Ô´N¯à¹ï¹q¸ô®ø¯Óªº¥\²v¥h§@´ú¶q¤ÀªR¨Ã¥B¹w¥ý§ä¨ì¹ï¥\²v³Ì¨Î¤Æªº¹q¸ô³]­p¡C

¥D­nªº¬ã¨s¤è¦V¦³¤U¦C´X¶µ¡G
ƒÜ ¦b¦h³B²z¾¹¡A¦h°O¾ÐÅé¡A©M¦h¶gÃ䪺SOC¤¤¡A¥Ñ©ó¶V¨Ó¶V°ªªºÀW²v©M¦b·sªº²`¦¸·L¦Ì»sµ{ªº§Þ³N¤U¡A¦b³o¨Ç³\¦hªº¤¸¥ó¤¤©¼¦¹ªº·¾³q©M°T®§ªº¶Ç»¼³£¦]¬°§Ö³t¼W¥[ªº¤¬¬ÛÁpôªº©µ¿ð¥H¤Î¶V¨Ó¶V¤jªº´¹¤ùÅé¿n³£¨Ïªº¥¼¨Óªº³q°T¤¸¥ó¤w¸g¤£¤Ó¥i¯à§Q¥Î¤@­Ó¥D­nªº®É¯ß(clock)§@¦P¨B¤Æ¡A©Ò¥H§Ú­Ì·Q­n³]­p¤@­Ó¥]§t«D¦P¨B¤Æ¬[ºcªº®É¯ßµ¦²¤(clock scheme)¨Ó¹F¨ì­°§C¥\²vªº¥Øªº¡A°ò¥»¤W¥D­nªº®É¯ßµ¦²¤(clock scheme)ªº¿ï¾Ü¬°GALS(Globally-Asynchronous Locally-Synchronous)¡C

ƒÜ ¦b²{¥N³Ð·sªº³q°T§Þ³N¡A¨ã¦³¥iÄâ©Ê¡BµL½u©M¤pÅé¿nªº³q°T²£«~³£¬O¥Ø«e¥«³õ¤W³Ì¨ü­«µøªº®Ö¤ß§Þ³N¡A¦Ó­n¯à¹ê²{³o¨Ç¯S¼x¡A¹q¤Oªº¨ÑÀ³©ó¬O´NÅ㪺®æ¥~­«­n¤F¡A¦b³oÃä§Ú­Ì¸ÕµÛ¦bSOC´¹¤ù¤W§@ÅÞ¿è¤Á³Î°Ï¤À¦¨¤@¨Ç«D¦P¨Bªº°Ï¶ô¼Ò²Õ¡A¨Ã¥B³]­p¤@¨Ç°g§Aªº§C¥\²v¼Ò²Õ¦b¨C­Ó°Ï¶ô¤¤¡A¨Ó´ú¶q¦ô­p³o¨Ç°Ï¶ô©Ò®ø¯Óªº¥\²v¡A¨Ã¥B§Q¥Î¹w´úªº¤è¦¡¨Ó§PÂ_¨C­Ó¼Ò²Õ¦ó®É¥i¥H¶i¤J§C¥\²v¼Ò¦¡¤U¡A¦ó®É«h»Ý­n³ê¿ô¥¦¨ì¥¿±`¨Ñ¹q¡A¨Ó¹F¨ì­°§C®ø¯Ó¥\²vªº³Ì¨Î¤Æ¡A³Ì«á§Ú­Ì·|¥H¥i­«³]ªºFPGA(Field-Programmable Gate Array)©Î¬OARM§@¼ÒÀÀ¨Ã¥BÃÒ¹ê§Ú­Ìªº¤èªk©Mµ²ªG¬O¥¿½T¥i¦æªº¡C

ƒÜ ÁÙ¦³¥Ñ©ó²{¦b§Ú­Ì©Ò´£¨Ñªº¹qÀ£¶V¨Ó¶V§CStatic power(leakage)ªºªí²{¦bSOC¸Ì­±©Ò¦ûªº¦Ê¤À¤ñ¶V¨Ó¶V§Ö³tªº¼W¥[¡A¦Ó³o¤S¬O­ÓµLªkÁקKªº²{¶H¡A¦]¬°¥u­n¨t²Î³B©ópower onªºª¬ºA¤U¡Aleakageªº·l¥¢¬O¤@©w¦s¦bªº¡A¦ý¬O§Ú­ÌÁÙ¬O¥i¥HÂÇ¥Ñpredictªº¤èªk¨Ó¹ï©ó¨t²Î¶¢¸m®É±Npower§@¦³®Äªºturn off©Î¬O­°§Cprocessorªº³t«×¨Ó´î¤Öleakageªº²£¥Í¡A·íµM³oºØpredictªº¤èªk¤£¶È¶È¥u¬O´î¤Öleakageªº²{¶H¡A¹ï©ó¾ã­Ó¨t²Îªºpower consumption³£¦³«Ü¤j´T«×ªº­°§C¡A¤£¹L¦¹ºØ¤èªk¤@¯ë«]­­©óRTOSªº¨t²Î¤¤¡A¦]¬°¦pªG¨S¦³©T©wªºpriority¨Ó§@priority scheming¡A·|³y¦¨¹L°ªªºpenalty (missing their deadline)¦Ó¤£¹ê¥Î¡C