The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Yes. TypeScript can describe RISC-V hardware—not only simulate its instructions in software. In the implementation covered by Hackaday, the TypeScript design is converted to Verilog with gateware-ts; FPGA vendor tools can then process that Verilog for deployment to a board. The distinction matters: a simulator runs a model of a processor, while this approach produces hardware-description code for an FPGA toolchain.
What does “RISC-V in TypeScript” mean?
It means using TypeScript as the source language for a hardware description. The code describes processor hardware; it is not simply a program that interprets RISC-V instructions in a browser. The TypeScript is translated into Verilog, a hardware description language supported by established FPGA workflows.
Hackaday’s October 14, 2021 article by Al Williams describes a RISC-V implementation from Low Level JavaScript using this approach. Williams writes, “We are accustomed to seeing RISC-V implementations in Verilog or VHDL, but [Low Level JavaScript] has one in TypeScript.” The report does not publish a benchmark or quantified performance result.
How does a TypeScript design become FPGA hardware?
- Describe the hardware in TypeScript. The source represents the processor design rather than just the behavior of a software emulator.
- Convert it to Verilog. The project uses gateware-ts to generate Verilog from the TypeScript description.
- Use the FPGA vendor’s tools. Those tools process the generated Verilog for the target FPGA and its board-specific implementation flow.
- Deploy to the FPGA. The resulting hardware design can be placed on FPGA hardware through the vendor workflow.
The generated Verilog is the compatibility bridge: TypeScript is the front end, but Verilog remains the handoff to tools that build for the FPGA. The Hackaday account describes this path at a high level; it does not establish particular FPGA models, vendor-tool versions, or a board-specific setup procedure.
#1 Best Overall
- Designed for students and beginners looking to understand Digital Logic, fundamentals of FPGAs
- Features the Xilinx Artix 7 FPGA compatible with Vivado Design Suite WebPACK Edition (free download available from Xilinx)
- On board user interfaces include 16 user switches, 16 LEDs, 5 user pushbuttons, and a
- Expansion opportunities with four Pmod ports including 3 standard 12-pin Pmod ports and 1 dual
- Does NOT ship with micro USB cable
How does this compare with TypeScript RISC-V simulators?
A simulator helps you explore what instructions do and how processor state changes. It does not, by that fact alone, create HDL for an FPGA. The distinction is whether the project stops at software execution or generates hardware-description output.
| Approach | What it does | Instruction coverage or fidelity | FPGA output | Debugging focus |
|---|---|---|---|---|
| TypeScript hardware design described by Hackaday | Uses TypeScript as a hardware-description front end and converts it with gateware-ts | Specific coverage is not stated in the Hackaday report | Generates Verilog for FPGA vendor tools | Vendor-tool errors may not map cleanly back to TypeScript |
| Edison | Educational TypeScript and React RISC-V IDE for simulation and debugging, with register and memory views and breakpoints | Four-stage fetch/decode/execute/writeback pipeline; limited instruction implementation. Its README says it is not fully compliant and is not intended for production. | Not stated in its README description | Step through simulated execution and inspect processor state |
| srki/RISC-V-Simulator | Browser-based TypeScript and HTML5 Canvas assembler and simulator | RV32I simulator with documented subsets of branch, load/store, immediate, and register instructions | Not stated in its project description | Step through execution and visualize CPU state; adjust simulation frequency |
The simulator projects are useful starting points if your goal is learning assembly, observing CPU state, or experimenting without FPGA hardware. Their documented purpose is simulation, so they should not be treated as substitutes for a TypeScript-to-Verilog hardware flow.
Rank #2
- Arty A7 comes in two FPGA variants: Arty A7-35T features Xilinx XC7A35TICSG324-1L. Arty A7-100T features the larger Xilinx XC7A100TCSG324-1.
- Internal clock speeds exceeding 450MHz, On-chip analog-to-digital converter (XADC), Programmable over JTAG and Quad-SPI Flash
- 256MB DDR3L with a 16-bit bus @ 667MHz, 16MB Quad-SPI Flash, USB-JTAG Programming circuitry, Powered from USB or any 7V-15V source
- 10/100 Mbps Ethernet, USB-UART Bridge
- 4 Switches, 4 Buttons, 1 Reset Button, 4 LEDs, 4 RGB LEDs, 4 Pmod connectors, shield connector
Is TypeScript practical for FPGA development?
It can be a practical front end for developers who already know TypeScript and want to describe hardware without beginning in Verilog or VHDL. Familiar syntax and the possibility of using higher-level abstractions are potential advantages, but they do not remove the need to understand hardware design or the target FPGA workflow.
The extra translation step
Because the FPGA tools receive generated Verilog rather than the original TypeScript, the build has an additional stage. A problem may originate in the TypeScript, the generated HDL, or later vendor-tool processing.
Recommended Free Tools
Rank #3
- [FPGA Chip] GW2AR-18 QN88 FPGA Chip containing 20736 LUT4 logic cells and 15552 Filp-Flops.There are 2 PLL in this FPGA chip, and many DSP units supporting 18 bit x 18 bit multiplication
- [Onboard Debugger ] Sipeed Tang Nano 20K Development Board support JTAG for FPGA, USB to UART for FPGA,USB to SPI for FPGA communication, Control MS5351 generate frequency
- [USB2.0 HS interface] The 27MHz crystal generates the clock for HDMI display, onboard MS5351 clock generating chip also provides mutiple clocks.Support Serial communication, high-speed SPI reception.
- [Application scenarios] Tang Nano 20K Open source Development Board supports game console emulators, drives RGB screens, multiple display outputs, 20K LUT4, RISC-V soft-core experiments.
- [Wiki] "dl.sipeed.com/shareURL/TANG/Nano_20K/1_Datasheet";Any after-Sales Privems, Please Contact us by click "Waypondev" store and ask a question or leave the message in our forum by "forum.youyeetoo .com/".
Debugging across languages
Vendor-tool diagnostics may refer to generated Verilog structures rather than the TypeScript expressions that produced them. That can make source-level diagnosis less direct. The Hackaday report identifies this mapping issue as a trade-off; it does not provide quantified debugging times or a comparison against native Verilog workflows.
Toolchain dependence remains
Using TypeScript does not replace FPGA vendor tools. Verilog output still has to be processed for the chosen FPGA, so developers remain dependent on the device’s supported toolchain and its requirements.
Quick Recap
Best Value
- Digilent Basys 3 Artix-7 FPGA Trainer Board: Recommended for Introductory Users
Rank #4
- The best way to get started with FPGAs: Using a simple board with projects that build on eachother, now anyone can get started with FPGA development!
- Fun peripherals available: With 4 LEDs, 4 push-buttons, 7-segment display, USB connector, a VGA connector, and a PMOD (for expansion) you can have dozens of fun projects available to you out of the box!
- Works with Verilog and VHDL: No matter which programming language you want to get started with, the Go Board will work for you!
- No extra device required: Simply plug the Go Board into a USB port and go! Getting started with FPGAs has never been easier.
- Works with all operating systems: Windows, Mac, Linux
Which route should you choose?
- Choose a simulator if you want to learn RISC-V instruction behavior, inspect registers and memory, or experiment in a browser or educational IDE.
- Explore the TypeScript hardware route if your goal is an FPGA-deployable design and you are comfortable tracing issues through TypeScript, generated Verilog, and vendor tools.
- Check the exact project and board support before committing to hardware. The cited article establishes the TypeScript-to-Verilog-to-FPGA concept, but does not specify a validated board, tool version, or measured performance.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

