Digital ȸ·Î¼³°è´Â ¾î´À Á¤µµÀÇ ³í¸®ÀûÀÎ »ç°í´É·Â¸¸ ÀÖÀ¸¸é »çÀü Áö½ÄÀÌ ¸¹Áö ¾Ê¾Æµµ ´©±¸³ª Á¢±ÙÀÌ °¡´ÉÇÑ ºÐ¾ßÀÌ´Ù. ÀÌ ±³Àç´Â Verilog HDLÀ» »ç¿ëÇÏ¿© Digital ȸ·Î¼³°è¸¦ Çϱâ À§ÇØ ÇʼöÀûÀ¸·Î ¾Ë¾Æ¾ß ÇÒ ³»¿ëµéÀ» ¼Ò°³ÇÏ´Â °Í¿¡¼ºÎÅÍ ½ÃÀÛÇÏ¿©, ¼³°èÇØ¾ß ÇÒ ³»¿ë¿¡ ´ëÇÑ ±â´ÉÁ¤ÀǸ¦ ÇÏ°í, ȸ·Î¸¦ ¼³°èÇÏ¿© Hardware·Î ±¸ÇöÇÏ´Â Digital ȸ·Î¼³°èÀÇ ¸ðµç °úÁ¤À» Ãæ½ÇÇÏ°Ô ÇнÀÇÒ ¼ö ÀÖµµ·Ï ±âȹµÇ¾ú´Ù.
Verilog HDLÀº Digitalȸ·Î¸¦ ±¸ÇöÇϱâ À§ÇØ °í¾ÈµÈ Programming ¾ð¾îü°èÀε¥, ±¸ÇöÇÒ ´ë»óÀÎ Digitalȸ·ÎÀÇ Æ¯¼º¿¡ ¸Âµµ·Ï ¹®¹ýü°è°¡ Çü¼ºµÇ¾î ÀÖ´Ù. Verilog HDLÀº And Gate³ª D Flip Flop, CounterµîÀÇ Digitalȸ·Î¸¦ ±¸ÇöÇÔ¿¡ ¸ñÀûÀÌ ÀÖ´Ù´Â Á¡¿¡¼ ±¸ÇöÇÒ ´ë»óÀÌ ÄÄÇ»ÅÍ È¯°æÀÎ C¾ð¾î³ª ´Ù¸¥ Programming ¾ð¾î¿Í´Â ±¸º°µÇ´Â Ư¡À» °®´Â´Ù.
º» ±³Àç´Â ´Ü¼øÈ÷ Verilog HDLÀÇ ¹®¹ýÀ» ¼Ò°³Çϰųª, XILINX VIVADO Tool¿¡ ´ëÇÑ »ç¿ë¹ýÀ» ¾Ë·ÁÁÖ´Â ´Ü°è¸¦ ³Ñ¾î¼ Digitalȸ·Î¸¦ ¼³°èÇÏ´Â ¹æ¹ýÀ» ÀÍÈûÀ¸·Î½á, ½º½º·Î Verilog HDLÀ» »ç¿ëÇÏ¿© Digital ȸ·Î¸¦ ¼³°èÇÏ°í ±¸ÇöÇÏ´Â ´É·ÂÀ» À°¼ºÇÔ¿¡ ÁßÁ¡À» µÎ°í ±âȹµÈ ±³ÀçÀÌ´Ù. ÀÌ ±³À縦 µû¶ó Ãæ½ÇÇÏ°Ô ÇнÀÇÏ°í ³ª¸é, Digital ȸ·Î·Î ±¸ÇöÇØ º¸°í ½ÍÀº ±â´ÉÀÌ »ý°¢³µÀ» ¶§ ¾î¶² °úÁ¤À» °ÅÃļ Digital Hardware·Î Á¦ÀÛÇÒ °ÍÀΰ¡¿¡ ´ëÇØ ½º½º·Î Á¢±ÙÇÒ ¼ö ÀÖ´Â ´É·ÂÀ» °®Ãß°Ô µÉ °ÍÀÌ´Ù.
ÀÌ ±³Àç´Â Å©°Ô 4ºÎºÐ°ú ºÎ·ÏÀ¸·Î ±¸¼ºµÇ¾î ÀÖ´Ù.
Part 1 : Digital ȸ·Î¼³°è¸¦ ½ÃÀÛÇϱâ À§ÇØ ÇÊ¿äÇÑ Áö½Äµé
Part 2 : Verilog HDL·Î ¼³°èÇϱâ
Part 3 : Verilog HDL·Î ±¸ÇöÇϱâ
Part 4 : ¼³°è Project ¼öÇàÇϱâ
ºÎ·Ï
Part 1Àº Verilog HDL·Î Digitalȸ·Î ¼³°è¸¦ ½ÃÀÛÇϱâ À§Çؼ ¹Ì¸® ¾Ë°í ÀÖ¾î¾ß ÇÒ ÇʼöÀûÀÎ ³»¿ëµéÀ» ¼Ò°³ÇÏ°í ÀÖÀ¸¸ç, Part 2´Â Digitalȸ·Î¸¦ ¼³°èÇϱâ À§ÇØ ¹Ýµå½Ã ¾Ë¾Æ¾ß ÇÒ Verilog HDL¹®¹ýÀÇ ÇʼöÀûÀÎ ³»¿ëµéÀ» ÇнÀÇÏ°Ô µÇ´Âµ¥ ÀÌ¹Ì ¾Ë°í Àְųª ½±°Ô ÀÌÇØÇÒ ¼ö ÀÖ´Â Digital ȸ·ÎÀÇ »ç·Ê¸¦ Áß½ÉÀ¸·Î ½ÀµæÇÏ°Ô µÈ´Ù. Verilog HDL ¹®¹ýÀ» ÀÍÈ÷°í, ½º½º·Î Digitalȸ·Î¿¡ ´ëÇÑ Verilog HDL Code¸¦ ÀÛ¼ºÇØ º¸°í SimulationÀ» ÅëÇØ Verilog HDLÀÇ µ¿ÀÛÀ» ÀÌÇØÇÏ´Â °úÁ¤À» ¹Ýº¹ÇÏ´Â ÇüÅ·ΠVerilog HDLÀ» ½±°Ô ÇнÀÇÒ ¼ö ÀÖµµ·Ï ±¸¼ºµÇ¾ú´Ù.
Part 3Àº Verilog HDL·Î ¼³°èµÈ ȸ·Î¸¦ °ËÁõÇϱâ À§ÇÏ¿©, XILINX FPGA ChipÀÌ ÀåÂøµÈ ½Ç½À±âÀÚÀ縦 È°¿ëÇÏ¿© Hardware·Î µ¿ÀÛÀ» È®ÀÎÇÏ´Â °úÁ¤À» ÇнÀÇÒ ¼ö ÀÖµµ·Ï ±¸¼ºµÇ¾ú´Âµ¥, ƯÈ÷ XILINX»ç¿¡¼ Á¦°øÇÏ´Â Integrated Logic Analyzer ±â´ÉÀ» È°¿ëÇÏ¿© µ¿ÀÛÁßÀÎ FPGA Chip ³»ºÎÀÇ È¸·ÎµéÀÇ »óŸ¦ °üÃøÇÏ´Â ¹æ¹ýÀ» ÇнÀÇÒ ¼ö ÀÖ´Ù.
Part 4´Â Part 1 ~ Part 3À» ÅëÇØ ÇнÀÇÑ ³»¿ëÀ» ±â¹ÝÀ¸·Î Digitalȸ·Î¸¦ Verilog HDL·Î ¼³°èÇÏ°í Hardware·Î ±¸ÇöÇÏ´Â °úÁ¦µéÀ» ¼öÇàÇÏ°Ô µÈ´Ù. Áö±Ý±îÁö ÇнÀÇÑ ³»¿ëµéÀ» È°¿ëÇÏ¿© Digitalȸ·Î¸¦ ¼³°èÇÔ¿¡ ÀÖ¾î¼ °³³ä Á¤¸®¿¡¼ºÎÅÍ FPGA ChipÀÌ ÀåÂøµÈ Hardware·Î ±¸Çö±îÁöÀÇ ¸ðµç °úÁ¤À» Project Çü½ÄÀ¸·Î ¼öÇàÇØ º½À¸·Î½á Digital ȸ·Î¼³°è ½Ç¹«´É·ÂÀ» °®Ãâ ¼ö ÀÖµµ·Ï ±¸¼ºµÇ¾ú´Ù.
ºÎ·Ï¿¡´Â µ¶Àڵ鿡°Ô Digitalȸ·Î ¼³°è¿Í °ü·ÃµÈ À¯¿ëÇÑ Á¤º¸¸¦ Á¦°øÇϱâ À§ÇÏ¿© ¾Æ·¡ÀÇ ³»¿ëµéÀ» ¼ö·ÏÇÏ¿´´Ù.
ºÎ·Ï 1. XILINX VIVADO Tool¼³Ä¡¹æ¹ý.
ºÎ·Ï 2. XILINX FPGAÀÇ LUT¿¡ ´ëÇÑ ÀÌÇØ.
ºÎ·Ï 3. FPGA¿Í MICOMÀÇ Æ¯Â¡°ú Â÷ÀÌÁ¡.
ºÎ·Ï 4. ½Ç½À Àåºñ JFK-100A Board È°¿ëÀ» À§ÇÑ ÀÚ·á.
ºÎ·Ï 5. ¾ç¹æÇâ ÀÔÃâ·Â Port ±¸ÇöÀ» À§ÇÑ Verilog HDL.
ºÎ·Ï 6. Flash Memory·Î BootingÇϱâ.
ºÎ·Ï 7. °³¹ß¹®¼ Á¤¸®Çϱâ.
ºÎ·Ï 1¿¡¼´Â Xilinx VIVADO Tool¿¡ ´ëÇÑ ¼³Ä¡¹æ¹ýÀ» »ó¼¼ÇÏ°Ô ¼Ò°³ÇÏ¿´´Âµ¥, ¿©·¯ºÐÀº XILINX»ç¿¡¼ Á¦°øÇÏ´Â ¹«·á LicenseÀÎ WebPACK License¸¦ »ç¿ëÇÏ¿© º» ±³Á¦¿¡¼ ¼Ò°³ÇÏ´Â ¸ðµç ³»¿ëÀ» ÇнÀÇÒ ¼ö ÀÖ´Ù. XILINX VIVADO ToolÀº Windows7 ȤÀº Windows8À̳ª Windows10ÀÇ 64bit OS¿¡¼¸¸ µ¿À۵ȴٴ Á¡¿¡ À¯ÀÇÇÏ¿© ¼³°èÇÏ·Á´Â PCÀÇ È¯°æÀ» ±¸ÃàÇÏ¿©¾ß ÇÑ´Ù.
ÀÌ ±³Á¦¿¡¼ ÇнÀÇÒ VIVADO ToolÀº 2017³â 2¿ù ±âÁØÀ¸·Î XILINX»çÀÇ ÃֽŠFPGA SeriesÀÎ 7 Series¸¦ Áö¿øÇϱâ À§ÇØ °³¹ßµÈ ÃֽŠFPGA°³¹ß¿ë ToolÀÌ´Ù. Spartan6³ª ±× ÀÌÀüÀÇ FPGA Series´Â ISE ToolÀ» »ç¿ëÇÏ¿©¾ß Çϸç, ISE Tool¿¡¼´Â Artix7À̳ª Spartan7, ZYNC7, VIRTEX7 µîÀÇ ÃֽŠ7 Series´Â °³¹ßÇÒ ¼ö ¾ø´Ù.
ºÎ·Ï 2¿¡¼´Â XILINX FPGA¿¡¼ Á¶ÇÕȸ·Î¸¦ ±¸ÇöÇÏ´Â ÇÙ½É LibraryÀÎ LUT(Look Up Table)ÀÇ µ¿ÀÛ¿¡ ´ëÇÑ ¿ø¸®¸¦ ¼Ò°³ÇÏ¿´´Ù.
ºÎ·Ï 3¿¡¼´Â DigitalÁ¦¾îÀåÄ¡¿¡ ´ëÇÑ °³¹ß Engineer°¡ ÀÚ½ÅÀÌ ¿øÇÏ´Â ±â´ÉÀ» ¼³°èÇÏ¿© ÇöÀå¿¡¼ Á÷Á¢ Hardware·Î ±¸ÇöÇÒ ¼ö ÀÖ´Â ´ëÇ¥ÀûÀÎ ¹ÝµµÃ¼ÀÎ FPGA¿Í MICOMÀÇ Æ¯Â¡°ú Â÷ÀÌÁ¡À» ¼Ò°³ÇÏ¿© ¾î¶² ȯ°æ¿¡¼ ¾î¶² Á¾·ùÀÇ ¹ÝµµÃ¼¸¦ äÅÃÇÒ °ÍÀΰ¡¿¡ ´ëÇÑ ÀÌÇظ¦ µ½µµ·Ï ÇÏ¿´´Ù.
ºÎ·Ï 4¿¡¼´Â º» ±³Àç¿¡¼ È°¿ëµÇ°í ÀÖ´Â FPGAÀÎ XC7A15T¸¦ ÀåÂøÇÑ ½Ç½ÀÀåºñ JFK-100A BoardÀÇ Hardware¿¡ ´ëÇÑ ÀڷḦ Á¦°øÇÏ¿´´Ù. µ¶ÀÚµéÀº ÀÌ Hardware ÀڷḦ È°¿ëÇÏ¿© ÀÌ ±³ÀçÀÇ ÇнÀ³»¿ëÀ» ±¸ÇöÇØ º¸´Â °Í »Ó¸¸ ¾Æ´Ï¶ó ÀÌ Hardware¸¦ È°¿ëÇÏ¿© µ¶ÀÚ°¡ »ý°¢ÇÏ´Â ´Ù¾çÇÑ ApplicationÀ» ±¸ÇöÇØ º¼ ¼ö ÀÖµµ·Ï ÇÏ¿´´Ù.
ºÎ·Ï 5¿¡¼´Â ¾ç¹æÇâ ÀÔÃâ·Â ½ÅÈ£¸¦ ó¸®Çϱâ À§ÇÑ Verilog HDL ¹®¹ýÀ» ¼Ò°³ÇÏ¿´°í,
ºÎ·Ï 6¿¡¼´Â Flash Memory¿¡¼ FPGA·Î BootingÇÏ´Â ¹æ¹ýÀ» ¼Ò°³ÇÔÀ¸·Î½á HardwareÀÇ Àü¿øÀ» Ä×À» ¶§ ÀÚµ¿ BootingÇÏ´Â ¹æ¹ýÀ» Á¦½ÃÇÏ¿´´Ù.
ºÎ·Ï 7¿¡¼´Â °³¹ßÀÇ °á°ú¹°À» ÀçÈ°¿ëÇÔ¿¡ ÀÖ¾î¼ Áß¿äÇÑ ¿ä¼ÒÀÎ ¹®¼ Á¤¸®¿¡ ´ëÇØ ¼Ò°³ÇÏ¿´´Ù.
ÀÌ Ã¥ÀÇ ÇнÀÀÚµéÀÌ ÀÌ ±³ÀçÀÇ ¾È³»¸¦ µû¶ó Â÷ºÐÇÏ°Ô ÇнÀÇÏ¿©, ½º½º·Î°¡ »ý°¢ÇÏ´Â Digital Hardware¸¦ ±¸ÇöÇÒ ´É·ÂÀ» °®Ãß¾î ½Ç·Â ÀÖ´Â Engineer·Î ¼ºÀåÇÒ »Ó ¾Æ´Ï¶ó, ½º½º·Î °í¾ÈÇÑ Á¦Ç°À̳ª, Digital SystemÀ» °³¹ßÇÏ¿© Á¦°øÇÏ´Â Àڱ⸸ÀÇ »ç¾÷ ºÐ¾ß¸¦ ÀÌ·ç¾î ³ª°¡´Â µ¥¿¡ ÀÛÀº µµ¿òÀÌ µÇ±â¸¦ ¹Ù¶ó´Â ¹ÙÀÌ´Ù.
ÀÌ Ã¥ÀÌ Ãâ°£µÇ±â±îÁö ÃâÆÇÀÇ ¸ðµç °úÁ¤¿¡ ÀÖ¾î¼ ¾Æ³¦¾ø´Â Áö¿øÀ» º¸³»ÁֽŠ¼Û±¤Çå º¹µÎÃâÆÇ»ç »çÀå´Ô°ú, XILINX¿Í °ü·ÃÇÏ¿© ±â¼úÀûÀÎ µµ¿òÀÌ ÇÊ¿äÇÒ ¶§¸¶´Ù ¼º½É²¯ Áö¿øÀ» ÇØÁֽŠXILINX Korea ±èȫö ºÎÀå´Ô²² ±íÀº °¨»ç¸¦ µå¸°´Ù.
PART 1 Digital ȸ·Î¼³°è¸¦ ½ÃÀÛÇϱâ À§ÇØ ÇÊ¿äÇÑ Áö½Äµé
Á¦1°ú Verilog HDL·Î Digital ȸ·Î¼³°è¸¦ ½ÃÀÛÇϱâ À§ÇÑ »çÀüÇнÀ (Pre Study)
1.1 Analog½ÅÈ£¿Í Digital½ÅÈ£ ÀÌÇØÇϱâ
1.2 Digital ȸ·Î ±âÃÊ
1.3 Digital ȸ·Î ¼³°è °³¿ä
PART 2 Verilog HDL·Î ¼³°èÇϱâ
Á¦2°ú Verilog HDL ÇнÀ 1 : VIVADO ToolÀ» È°¿ëÇÑ ¼³°è °úÁ¤ ÀÍÈ÷±â
2.1 <2 Input AND Gate>±¸ÇöÀ» À§ÇÑ Verilog HDL ÇнÀ
2.2 <2 Input AND Gate>±¸ÇöÀ» À§ÇÑ VIVADO Tool ½Ç½À
Á¦3°ú Verilog HDL ÇнÀ 2 : Á¶ÇÕȸ·Î1 (Gate, Multiplexer)
3.1 Gate, Multiplexer ±¸ÇöÀ» À§ÇÑ Verilog HDL ÇнÀ
3.2 Gate, Multiplexer ±¸ÇöÀ» À§ÇÑ Verilog HDL ½Ç½À
Á¦4°ú Verilog HDL ÇнÀ 2 : »ê¼ú¿¬»ê, °èÃþ±¸Á¶¸¦ À§ÇÑ Verilog HDL
4.1 »ê¼ú¿¬»ê°ú 7 Segment Decoder ±¸ÇöÀ» À§ÇÑ Verilog HDL ÇнÀ
4.2 »ê¼ú¿¬»ê°ú 7 Segment Decoder ±¸ÇöÀ» À§ÇÑ Verilog HDL ½Ç½À
Á¦5°ú Verilog HDL ÇнÀ 4 : ¼øÂ÷ȸ·Î ¼³°è¸¦ À§ÇÑ Verilog HDL
5.1 ¼øÂ÷ȸ·Î ¼³°è¸¦ À§ÇÑ Verilog HDL ÇнÀ
5.2 ¼øÂ÷ȸ·Î ¼³°è¸¦ À§ÇÑ Verilog HDL ½Ç½À
PART 3 Verilog HDL·Î ±¸ÇöÇϱâ
Á¦6°ú ½Ç½ÀÀåºñ Hardware ÀÍÈ÷±â 1: LED, 7 Segment
6.1 Counter°ª LED·Î Ç¥½ÃÇϱ⠽ǽÀ
6.2 Seven Segment Ç¥½ÃÇϱ⠽ǽÀ
Á¦7°ú ½Ç½ÀÀåºñ Hardware ÀÍÈ÷±â 2: Key matrix
7.1 Key Scan ModuleÁ¦¾îȸ·Î ¼³°èÇϱâ
7.2 Key Value Assign ȸ·Î ¼³°èÇϱâ
7.3 8 digit BCD data »ý¼º ȸ·Î ¼³°èÇϱâ
7.4 8 digit segment control ȸ·Î ¼³°èÇϱâ
7.5 Key Matrix Display ȸ·Î¿¡ ´ëÇÑ Top Module
7.6 Key Matrix Displayȸ·Î¿¡ ´ëÇÑ Hardware Test
7.7 VIVADO lntegrated Logic Analyzer¸¦ È°¿ëÇÑ Hardware Test
PART 4 ¼³°è Project ¼öÇàÇϱâ(°úÁ¦¿¡ ´ëÇÑ °³³ä Á¤ÀǺÎÅÍ ¼³°è, ±¸Çö, °ËÁõ±îÁö)
Á¦8°ú Project 1 : Stop Watch
8.1 Key Control Module¿¡ ´ëÇÑ ¼³°è
8.2 Counter Module¿¡ ´ëÇÑ ¼³°è
8.3 Hexa to BCD º¯È¯ Module¿¡ ´ëÇÑ ¼³°è
8.4 BCD to 7 Segment º¯È¯ Module¿¡ ´ëÇÑ ¼³°è
8.5 Stop Watch Top Module¿¡ ´ëÇÑ ¼³°è ¹× º¸µå Test
Á¦9°ú Project 2 : UART
9.1 UART ¼Û½Å ¸ðµâ ¼³°è
9.2 UART ¼ö½Å ¸ðµâ ¼³°è
9.3 UART Åë½ÅÀ» È°¿ëÇÑ Data ¼Û¼ö½ÅÀÇ ÀÀ¿ë
9.4 UART Åë½Å Test¸¦ À§ÇÑ °í·Á
9.5 UART ¼Û¼ö½Å ȸ·Î¿¡ ´ëÇÑ Hardware Test
Á¦10°ú Project 3 : 4Ä¢ ¿¬»ê °è»ê±â
10.1 4Ä¢ ¿¬»ê °è»ê±â °³¿ä
Á¦11°ú Project 4 : Alarm±â´É ½Ã°è
11.1 Alarm±â´É ½Ã°è °³¿ä
Á¦12°ú ÈÄ¼Ó ÇнÀÀ» À§ÇÑ ¾È³»
ºÎ·Ï
ºÎ·Ï 1 Xilinx VIVADO Tool ¼³Ä¡Çϱâ
ºÎ·Ï 2 Xilinx LUT(Look Up Table) ÀÌÇØÇϱâ
ºÎ·Ï 3 FPGA¿Í MICOM
ºÎ·Ï 4 ½Ç½ÀÀåºñ JFK-100A Board È°¿ëÀ» À§ÇÑ ÀÚ·á
ºÎ·Ï 5 ¾ç¹æÇâ ÀÔÃâ·Â Port ±¸ÇöÀ» À§ÇÑ Verilog HDL
ºÎ·Ï 6 Flash Memory·Î BootingÇϱâ
ºÎ·Ï 7 °³¹ß¹®¼ Á¤¸®Çϱâ