unike267 / practices Goto Github PK
View Code? Open in Web Editor NEWThis repo contains the work developed in the SIEAV Master practices ๐โ๏ธ๐
This repo contains the work developed in the SIEAV Master practices ๐โ๏ธ๐
For establish communication via UART with NEORV32 using the CuteCom terminal we must be added user dialout.
With the following command:
sudo usermod -aG dialout $USER
Restart the computer.
Check with the following command that the user dialout is added:
groups
Iโm trying to connect the acceler module that it uses Std_Logic into a NEORV32 CPU that it uses Std_ULogic. For make conversions Iโm using the Standard Logic Type Conversions includes in std_logic_1164 package
The std_logic_1164 package includes this functions:
function To_bit (s : STD_ULOGIC; xmap : BIT := '0') return BIT;
function To_bitvector (s : STD_ULOGIC_VECTOR; xmap : BIT := '0') return BIT_VECTOR;
function To_StdULogic (b : BIT) return STD_ULOGIC;
function To_StdLogicVector (b : BIT_VECTOR) return STD_LOGIC_VECTOR;
function To_StdLogicVector (s : STD_ULOGIC_VECTOR) return STD_LOGIC_VECTOR;
function To_StdULogicVector (b : BIT_VECTOR) return STD_ULOGIC_VECTOR;
function To_StdULogicVector (s : STD_LOGIC_VECTOR) return STD_ULOGIC_VECTOR;
This functions don't contemplate all cases.
For make Std_Logic to Std_ULogic conversion I do it in two steps. Fisrt Iโm use To_bit conversion and then To_StdULogic conversion.
bit_data <= to_bit(std_logic_data);
s_ulogic_data <= To_StdULogic(bit_data);
And for make Std_ULogic to Std_Logic conversion Iโm use with select:
with std_ulogic_data select
std_logic_data <= '1' when '1',
'0' when others;
The question is, why are not there functions to do this two conversions directly?
To load a .C
program to NEORV32 first we must compile it.
There are many alternatives to make this.
First, download GCC custom with RISC-V toolchain from the following repository.
Then, located in the folder where the program we want to compile is located together with the Makefile, execute:
PATH="/home/usainz/Descargas/riscv32-unknown-elf.gcc-12.1.0/bin/:$PATH" make install
The command PATH="/../:$PATH"
instructs the system where to search for a program to run.
In this case, the custom GCC binary executables are indicated.
Therefore, the compilation is going to be done through this custom GCC.
The command make
is used to automate the build process through the Makefile.
The command install
is a target of the command make
.
In this case install
target will compile, generate and install VHDL IMEM boot image (for application, no header) both in the local folder and in neorv32/rtl/core
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.