Comments (4)
BTW - numato makes a relatively inexpensive Artix-7 board:
https://numato.com/product/mimas-a7-artix-7-fpga-development-board-with-ddr-sdram-and-gigabit-ethernet
from darkriscv.
@drudru
HAHA, actually there are lots of inexpensive Xilinx FPGA boards in Chinese biggest e-commerce sites, www.taobao.com.
from darkriscv.
Hi Dru,
In theory the support for RV64I is easily implementable and I can check this topic in this weekend. Of course, large data buses and additional instructions will probably impact the performance, in a way that the RV32I version will probably be faster than the RV64I version. Anyway, the performance will depends of the FPGA selected.
About the Artix-7, I tested the darkriscv in a Xilinx AC701 board equipped with an Artix-7 A200 and everything worked fine. The support for the AC701 is available in the directory ise/board/xilinx_ac701_a200, but unfortunately it is supported only in the Xilinx ISE, which supports a small number of FPGAs from the 7-series. In the case of a different Artix-7 FPGA, you will probably need import the ISE project to Vivado.
Well, the single core darkriscv w/ 4KB ROM, 4KB RAM and UART requires around 1400 LUTs, with is around 1% of an Artix-7 A200. I guess the smaller Artix-7 can easily support multiple darkriscv cores at same time. The performance is more complex: although the synthesis pointed that the darkriscv can work up to 147MHz in the Artix-7, for some reason the implementation steps barely reached the performance of 90MHz.
Maybe the problem is related to the tool (I used a very old Xilinx ISE tool instead of the more recent Vivado), maybe the problem is related to the optimization features.
I will make some tests regarding the RV64I support and I will add an additional feedback about it later.
from darkriscv.
I found a very inexpensive Artix-7 board equipped w/ SDRAM from QMTtech:
Of course, as other QMTech boards, it does NOT include JTAG, UART or GbE interfaces as you can found in the Numato boards. Anyway, I have two QMTech boards w/ Spartan-6 LX16 and they works fine with cheap JTAG and USB/UART adapters:
About the RV64I, I started adapt the support for RV32I/RV6I via ifdefs, but in the process introduced some bugs which makes the RV32I version crash and I will need more time in order to remove all bugs. In a preliminary way, there is no impact in the RV32I performance, but the RV64I requires more logic regarding the memory interface, since the memory interface logic must support all possible combinations of 8/16/32/64 bit operations in different alignments.
from darkriscv.
Related Issues (20)
- issue type of data in the struct DARKIO HOT 1
- "srai" instruction doesn't work on ISE/Spartan 6 HOT 4
- Compiling error HOT 8
- Expanding the DarkRISCV Family!
- Works on DE0 Nano Altera Cyclone IV HOT 18
- Is this board named khc40gbe_k420? HOT 9
- Verilator Support
- Problem with sample firmware HOT 7
- WIll you be willing to add dcumentation on memories ? HOT 2
- disable default nettype HOT 1
- replace all defines by parameters HOT 1
- bus bridge to AXI
- Why set two general-purpose register groups HOT 18
- [BUG] boot.s printf data@ is "_heap+4" HOT 3
- Running CoreMark benchmark in DarkRISCV! HOT 13
- START HERE!
- New board: Alinx AX309 HOT 1
- Expected data bus latency? HOT 1
- libncursesw-dev does not exist HOT 35
- Enabling __INTERACTIVE__ option when running make file HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from darkriscv.