FPGA & Verilog БлогFPGA chips

САПР Altera Quartus II / Intel Quartus Prime, язык Verilog HDL и кое-что про VHDL, FPGA Cyclone III, Cyclone IV, MAX II, MAX10. Платы разработчика серии Марсоход, Марсоход2, Марсоход3.


risc v logo 

Что такое RISC-V?

Многие из нас конечно знают про существование различных процессорных архитектур. Наиболее известные это 32х битные x86 от компании Intel и ARM от ARM Limited. Их развитие со временем привело к 64х битным системам x86-64 AMD, Intel64 от Intel и AARCH64 от ARM. Конечно существуют или существовали и другие процессорные архитектуры такие как Sparc, IA-64, PowerPC, MIPS.

Есть еще одна процессорная архитектура, которая стоит особняком и на которую вероятно стоит обратить внимание это RISC-V. В чем её особенность?

mbftdi src

Опубликованы исходные тексты драйвера JTAG программатора MBFTDI для Intel Quartus Prime!

 amd xilinx

Вчера, 27 октября, прошла интересная новость о том, что AMD приобретает компанию Xilinx.
Xilinx - одна из ведущих компаний разрабатывающих FPGA чипы. Общая сумма сделки вероятно будет около 35 миллиардов долларов, причем, похоже произойдет оплата путем обмена акциями. По сути дела, стороны просто обменяются акциями из расчёта ~1,7 акции AMD за одну акцию Xilinx. Сделка должна быть завершена до конца года. После сделки у акционеров AMD будет 74 процента акций объединённой компании, а у акционеров Xilinx будет 26%. Общая стоимость объединенной компании составит около 135 миллиардов.

Интересно, что в 2015-м году компания Intel приобрела другого производителя FPGA - компанию Altera. Тогда Интел заплатила живыми деньгами почти 16,7 миллиарда долларов.

Получается, что два извечных конкурента Intel и AMD производили процессоры для компьютеров и серверов и каждый купил себе в портфолио технологию FPGA. А Xilinx и Altera ведь тоже извечные конкуренты были...

В продолжении предыдущей статьи про процессор Forth ji в FPGA.. Мне удалось написать на форте простой интерпретатор. Он принимает из консоли через последовательный порт строки и разбирает их. Если выбранное слово из потока это число, то оно остается на стеке. Если не число, то возможно это форт слово. Интерпретатор пытается найти слово с своем словаре и если находит, то исполняет его.

На видео выше я попробовал продемонстрировать и записать работу интерпретатора.

forth j1

Наверное каждый разработчик FPGA рано или поздно решает создать свой процессор. Понятно, что есть много общеизвестных и распространенных процессоров у которых исходные тексты открыты для изучения и использования. Даже у нас на сайте мы уже запускали в плате Марсоход2 систему на кристалле ARMv2a и в плате Марсоход3 систему с процессором MIPS. Но и это не все! На opencores.org в разделе "процессоры" можно взять различные исходники более двухсот процессоров! Из широко известных там и Z80 и OpenRISC и RISC-V.

В этой статье я не буду изобретать свой процессор, однако, расскажу о довольно специфичном ядре - Forth-J1. Этот процессор специально разработан для исполнения "шитого кода" языка программирования Forth и хорошо подходит для использования внутри FPGA.

Автор этого ядра James Bowman, его страница на github здесь https://github.com/jamesbowman/j1
Я взял его Verilog исходники и адаптировал к нашим платам: Марсоход3, Марсоход3bis и новой плате M02mini. Вы можете взять мой адаптированный проект вот здесь: https://github.com/marsohod4you/M02mini/tree/master/forth_j1

Этот проект компилируется в среде САПР Intel Quartus Prime Lite для ПЛИС MAX10 наших плат и, в частности, для платы M02mini. При компиляции проекта смотрите, какая выбрана ревизия, для какой платы.

На плате M02mini стоит ПЛИС Intel MAX10 всего 2 тысячи логических элементов, но и здесь может работать 32х битный процессор J1 благодаря своей компактности.