Python의 FPGA/L 치카 (Lattice iCE40)
소규모 FPGA에서도 L 치카
Zynq는 ARM CPU가있는 비교적 풍부한 FPGA가 장착 된 보드입니다. 보다 소비 전력도 작은 FPGA
에서 고위 합성을 이용하는 것이 가능합니까? Polyphony는 컴파일러로서 최적화를 의식한 설계로 되어 있어 리소스의 소비량은 그렇게 많지 않습니다.
타겟은 iCE40(Lattice)
전력 소모가 적은 소규모 FPGA인 Lattice의 iCE40 UltraPlus UP5K에서 Python 코드를 실행해 봅시다. iCE40 UltraPlus에는 칩 내에 SPI 컨트롤러 프리미티브와 LED 드라이브 용 프리미티브가 있습니다. 이 칩을 탑재한 평가 보드 iCE40 UltraPlus Breakout board를 사용하여 L치카와 SPI를 제어해 봅시다.
iCE40 Ultra Family Data Sheet에서 발췌
타겟 보드의 RGB LED를 L 치카
평가 보드에는 RGB LED가 탑재되어 있습니다. 지금까지 Python 코드 blink.py를 사용하여 제어해 보겠습니다. 시스템 구성은 그림과 같습니다.
blink.py 에서 생성되는 모듈의 clk, rst, led 의 신호선을 사용한 톱 모듈을 Verilog-HDL 로 작성해, 벤더의 툴로 합성, 실장하는 것으로 동작 가능한 바이너리를 할 수 있습니다.
Polyphony가 출력하는 Verilog-HDL은 벤더에 독립적이므로 X사에서 실행한 동일한 Python의 코드를 L사에서 실행하는 것이 용이하게 할 수 있습니다.
iCE40UP의 특별한 점으로 톱 모듈에 LED 드라이버의 프리미티브를 사용한다는 지시를 써 둘 필요가 있습니다. 이 설명을 통해 도구가 자동으로 LED 드라이버를 통합합니다.
rgb_primitive.v//------------------------------
// Instantiate RGB primitives
//------------------------------
SB_RGBA_DRV RGB_DRIVER (
.RGBLEDEN (1'b1),
.RGB0PWM (0),
.RGB1PWM (green_wire),
.RGB2PWM (0),
.CURREN (1'b1),
.RGB0 (REDn), //Actual Hardware connection
.RGB1 (GRNn),
.RGB2 (BLUn)
);
defparam RGB_DRIVER.RGB0_CURRENT = "0b000001";
defparam RGB_DRIVER.RGB1_CURRENT = "0b000001";
defparam RGB_DRIVER.RGB2_CURRENT = "0b000001";
Reference
이 문제에 관하여(Python의 FPGA/L 치카 (Lattice iCE40)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ryos36/items/1061da6be06fecd14192
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
//------------------------------
// Instantiate RGB primitives
//------------------------------
SB_RGBA_DRV RGB_DRIVER (
.RGBLEDEN (1'b1),
.RGB0PWM (0),
.RGB1PWM (green_wire),
.RGB2PWM (0),
.CURREN (1'b1),
.RGB0 (REDn), //Actual Hardware connection
.RGB1 (GRNn),
.RGB2 (BLUn)
);
defparam RGB_DRIVER.RGB0_CURRENT = "0b000001";
defparam RGB_DRIVER.RGB1_CURRENT = "0b000001";
defparam RGB_DRIVER.RGB2_CURRENT = "0b000001";
Reference
이 문제에 관하여(Python의 FPGA/L 치카 (Lattice iCE40)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ryos36/items/1061da6be06fecd14192텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)