Last visit was: Sun Jan 23, 2022 5:43 am
It is currently Sun Jan 23, 2022 5:43 am



 [ 4 posts ] 
 Core Generators 
Author Message

Joined: Sat Feb 02, 2013 9:40 am
Posts: 1576
Location: Canada
FriscCoreGen is a software program that generates a RISCV compatible core from a template and user selections made in a GUI. Most of the options don’t work at the moment, but I improve it from time to time.

The latest thing included is non-standard immediates (nsi option) where if the immediate value in the instruction is $800 (immediates are 12-bits max) then the next 32-bit word in the instruction stream is used as the immediate value. This works for immediate mode instructions and load / store / branch displacements. It's non-standard as it's not the usual way a RISCV processor works.
Attachment:
FCG.png


You do not have the required permissions to view the files attached to this post.

_________________
Robert Finch http://www.finitron.ca


Fri Aug 28, 2020 3:21 am WWW

Joined: Mon Oct 07, 2019 2:41 am
Posts: 292
It would be a better deal, if one could use UNIX pipes. Config | core | verlog | fpga | netlists | hardware GUI is nice but does not make porting easy. What do click on after 5 years, later for a bug
fix, it needs 1 new standard I/O ports. Ben.


Sat Aug 29, 2020 1:08 am

Joined: Tue Dec 31, 2013 2:01 am
Posts: 112
Location: Sacramento, CA, United States
Is this method using the instruction pointer as "just another" auto-incrementing address register? That strategy has a lot of history, and I allow the same in my designs ... but I've heard that it can hinder performance, which may be a determining factor in some cases (not mine).


Sat Aug 29, 2020 3:26 pm

Joined: Sat Feb 02, 2013 9:40 am
Posts: 1576
Location: Canada
The core has a separate dedicated instruction pointer. It's RISCV compatible. The least significant bit of the pointer is always zero since RISCV minimum alignment is 16-bits for instructions.
Quote:
It would be a better deal, if one could use UNIX pipes. Config | core | verlog | fpga | netlists | hardware GUI is nice but does not make porting easy. What do click on after 5 years, later for a bug
fix, it needs 1 new standard I/O ports. Ben.

I'm not quite sure about this, but I've been pondering if it would be better just to code by hand or use a core generator, which is why I've been working on it slowly. I'm not sure it's the best approach. As it is if something changes down the road, the tool becomes outdated. But many tools are time limited.

_________________
Robert Finch http://www.finitron.ca


Sat Aug 29, 2020 6:25 pm WWW
 [ 4 posts ] 

Who is online

Users browsing this forum: CCBot and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software