Комментарии 4
Не очень ясно, зачем нужен внешний адаптер.
На DE0 (на всех) на борту есть ByteBlaster (он же USB Blaster). Это суть интерфейс USB-JTAG. Одним концом втыкается в порт USB (очевидно), второй конец уже разведен на аппаратный JTAG на самом FPGA. BusBlaster суть тоже самое. Зачем он нужен внешний USB-JTAG, если есть ByteBlaster?
Так же на борту есть флешка — EPCS64. FPGA теряет конфигурацию при потере питания, и загружает её из флеша на старте. Конфигурацию процессора нужно прошить в эту флешку. При прошивке из QUARTUS сначала ресетится FPGA, прямо в неё заливается конфигурация, которая делает из FPGA программатор, и по JTAG записывается файл конфигурации во флешку, после чего FPGA ресетится, и загружает конфигурацию уже из флешки. При этом совершенно никто не мешает во флешку записать такую конфигурацию, которая будет принимать и отправлять данные всё по тому же JTAG через набортный ByteBlaster.
Так же по поводу MIPS — вообще то в состав QUARTUS'а и так входит вполне себе штатный System Builder QSys, при помощи которого можно сконфигурировать SoC на ядре Altera NIOS II (32-bit RISC, софтпроцессор). «Медленная» реализация бесплатная. При этом не нужно шаманства с переходниками, JTAG-отладка работает «из-коробки» по ByteBlaster. Можно писать софт и отлаживаться из, например Eclipse, Keil, Atollic и т.д.
При этом, в квартусе софтпроцессор виден просто как блок, и к нему можно «дорисовать» любую периферию, какую захочется.
Сразу скажу, что я лично именно таким не занимался, но делал похожие вещи.
Вот отличная статья на тему: http://marsohod.org/index.php/projects/marsohod2/274-nios2.
На DE0 (на всех) на борту есть ByteBlaster (он же USB Blaster). Это суть интерфейс USB-JTAG. Одним концом втыкается в порт USB (очевидно), второй конец уже разведен на аппаратный JTAG на самом FPGA. BusBlaster суть тоже самое. Зачем он нужен внешний USB-JTAG, если есть ByteBlaster?
Так же на борту есть флешка — EPCS64. FPGA теряет конфигурацию при потере питания, и загружает её из флеша на старте. Конфигурацию процессора нужно прошить в эту флешку. При прошивке из QUARTUS сначала ресетится FPGA, прямо в неё заливается конфигурация, которая делает из FPGA программатор, и по JTAG записывается файл конфигурации во флешку, после чего FPGA ресетится, и загружает конфигурацию уже из флешки. При этом совершенно никто не мешает во флешку записать такую конфигурацию, которая будет принимать и отправлять данные всё по тому же JTAG через набортный ByteBlaster.
Так же по поводу MIPS — вообще то в состав QUARTUS'а и так входит вполне себе штатный System Builder QSys, при помощи которого можно сконфигурировать SoC на ядре Altera NIOS II (32-bit RISC, софтпроцессор). «Медленная» реализация бесплатная. При этом не нужно шаманства с переходниками, JTAG-отладка работает «из-коробки» по ByteBlaster. Можно писать софт и отлаживаться из, например Eclipse, Keil, Atollic и т.д.
При этом, в квартусе софтпроцессор виден просто как блок, и к нему можно «дорисовать» любую периферию, какую захочется.
Сразу скажу, что я лично именно таким не занимался, но делал похожие вещи.
Вот отличная статья на тему: http://marsohod.org/index.php/projects/marsohod2/274-nios2.
0
>> Не очень ясно, зачем нужен внешний адаптер.
Если я правильно понял то MISPfpga это реализация MISP на FPGA(простите за тавтологию) именно как процессора, JTAG в нем получается тоже реализован «аппаратно» то есть он не имеет никакого отношения к JTAG от FPGA. ByteBlaster подключён к выходам JTAG выходам FPGA и поэтому до JTAG выходов реализованных в MISP FPGA получить не может(точней может но вот софт надо будет капитально доработать). Поэтому и используется отдельный JTAG адаптер
>> Так же по поводу MIPS — вообще то в состав QUARTUS'а и так входит вполне себе штатный System Builder QSys, при помощи которого можно сконфигурировать SoC на ядре Altera NIOS II (32-bit RISC, софтпроцессор). «Медленная» реализация бесплатная…
Только это проц привязан к FPGA Altera и при переходе на Xillinx или Actel или Atmel вы его использовать не сможете. А MIPSfpga не привязан к конкретному производителю FPGA, где нужно там можно и использовать.
Если я правильно понял то MISPfpga это реализация MISP на FPGA(простите за тавтологию) именно как процессора, JTAG в нем получается тоже реализован «аппаратно» то есть он не имеет никакого отношения к JTAG от FPGA. ByteBlaster подключён к выходам JTAG выходам FPGA и поэтому до JTAG выходов реализованных в MISP FPGA получить не может(точней может но вот софт надо будет капитально доработать). Поэтому и используется отдельный JTAG адаптер
>> Так же по поводу MIPS — вообще то в состав QUARTUS'а и так входит вполне себе штатный System Builder QSys, при помощи которого можно сконфигурировать SoC на ядре Altera NIOS II (32-bit RISC, софтпроцессор). «Медленная» реализация бесплатная…
Только это проц привязан к FPGA Altera и при переходе на Xillinx или Actel или Atmel вы его использовать не сможете. А MIPSfpga не привязан к конкретному производителю FPGA, где нужно там можно и использовать.
+4
Nios привязан к Альтере, а вот в случае с MIPSfpga — это изначально ядро для ASIC-ов, т.е. если студент поиграется с системами на основе MIPSfpga на FPGA и придумает что-нибудь особо интересное, он потом может найти инвесторов, купить коммерческую лицензию на MIPS microAptiv UP и выпустить микросхему со своей системой на кристалле.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Портирование MIPSfpga на плату Terasic DE0-CV с Altera Cyclone V FPGA