tianruiwei[m] has quit [Ping timeout: 268 seconds]
gatecat has quit [Ping timeout: 268 seconds]
gatecat_ has joined #riscv
iamthebest[m]1 has quit [Ping timeout: 268 seconds]
khem has quit [Ping timeout: 268 seconds]
llamp[m] has joined #riscv
jwillikers has joined #riscv
iamthebest[m]1 has joined #riscv
tianruiwei[m] has joined #riscv
kaph has quit [Ping timeout: 250 seconds]
jwillikers has quit [Ping timeout: 256 seconds]
khem has joined #riscv
avoidr has quit [Ping timeout: 256 seconds]
avoidr has joined #riscv
JanC has quit [Ping timeout: 240 seconds]
avoidr has quit [Ping timeout: 240 seconds]
JanC has joined #riscv
avoidr has joined #riscv
jwillikers has joined #riscv
jwillikers has quit [Remote host closed the connection]
jwillikers has joined #riscv
jwillikers has quit [Remote host closed the connection]
jwillikers has joined #riscv
jwillikers has quit [Remote host closed the connection]
jwillikers has joined #riscv
jwillikers has quit [Remote host closed the connection]
jwillikers has joined #riscv
jwillikers has quit [Remote host closed the connection]
kaph has joined #riscv
ornxka has quit [Ping timeout: 256 seconds]
ornxka has joined #riscv
ornxka has quit [Remote host closed the connection]
ornxka has joined #riscv
jacklsw has joined #riscv
geranim0 has quit [Ping timeout: 250 seconds]
alMalsamo has quit [Ping timeout: 276 seconds]
alMalsamo has joined #riscv
NeoCron has joined #riscv
Doraemon has quit [Ping timeout: 240 seconds]
kaph has quit [Ping timeout: 268 seconds]
huseyinkozan has joined #riscv
fcc977 has joined #riscv
BOKALDO has joined #riscv
fcc977 has quit [Remote host closed the connection]
fcc977 has joined #riscv
peeps[zen] has quit [Ping timeout: 250 seconds]
peepsalot has joined #riscv
jack_lsw has joined #riscv
jacklsw has quit [Ping timeout: 268 seconds]
Gravis has quit [Ping timeout: 256 seconds]
vagrantc has quit [Quit: leaving]
GenTooMan has quit [Ping timeout: 240 seconds]
fcc977 has quit [Read error: Connection reset by peer]
fcc977 has joined #riscv
pecastro has joined #riscv
fcc977 has quit [Remote host closed the connection]
fcc977 has joined #riscv
fcc977 has quit [Read error: Connection reset by peer]
fcc977 has joined #riscv
jack_lsw has quit [Quit: Back to the real life]
jacklsw has joined #riscv
fcc977 has quit [Ping timeout: 250 seconds]
Andre_H has joined #riscv
jacklsw has quit [Read error: Connection reset by peer]
Andre_H has quit [Ping timeout: 240 seconds]
jjido has joined #riscv
pecastro has quit [Quit: Lost terminal]
jjido has quit [Quit: My MacBook Air has gone to sleep. ZZZzzz…]
Ivii has joined #riscv
Maylay has quit [Ping timeout: 256 seconds]
nelmire has quit [Remote host closed the connection]
fcc977 has joined #riscv
fcc977 has quit [Client Quit]
fcc977 has joined #riscv
winterflaw has quit [Remote host closed the connection]
crabbedhaloablut has quit [Remote host closed the connection]
crabbedhaloablut has joined #riscv
kaph has joined #riscv
fcc977 has quit [Ping timeout: 256 seconds]
kaph has quit [Read error: Connection reset by peer]
kaph has joined #riscv
kaph has quit [Remote host closed the connection]
kaph has joined #riscv
Maylay has joined #riscv
winterflaw has joined #riscv
alMalsamo has quit [Ping timeout: 276 seconds]
Maylay has quit [Ping timeout: 268 seconds]
Maylay has joined #riscv
kaph has quit [Read error: Connection reset by peer]
alMalsamo has joined #riscv
kaph has joined #riscv
kaph has quit [Ping timeout: 256 seconds]
Sofia has quit [Ping timeout: 276 seconds]
crabbedhaloablut has quit [Remote host closed the connection]
crabbedhaloablut has joined #riscv
geranim0 has joined #riscv
Sofia has joined #riscv
elastic_dog has quit [Ping timeout: 240 seconds]
elastic_dog has joined #riscv
jwillikers has joined #riscv
jwillikers has quit [Remote host closed the connection]
kaph has joined #riscv
<la_mettrie>
is there a processor without any extensions and for which purpose it would be used? as the most basic microcontroller?
<la_mettrie>
i was a bit surprised to find that not even MUL and DIV are included without extensions
<jn>
RV32I is a useful option if you want to minimize implementation complexity, or die area, or FPGA resource utilization
GenTooMan has joined #riscv
<jn>
(or RV32E, if you want to go even further)
adjtm has quit [Quit: Leaving]
nvmd has joined #riscv
<geertu>
la_mettrie: several early RISC processors survived well without MUL and/or DIV
<drmpeg>
The Nios V soft core is RV32IA.
<Esmil>
i like msp430 microcontrollers, and they don't have mul or div in the base instruction set
<gordonDrogon>
I've considered 32IM as my 'baseline' for my project, although I can do software mul/div if I can't get a core with them already in. my emulator caters for 'M' anyway...
mauz has joined #riscv
plantman2 has joined #riscv
plantman has quit [Ping timeout: 240 seconds]
Sos has joined #riscv
Gravis has joined #riscv
<la_mettrie>
esmil: they don't have any extensions?
mauz has quit [Quit: Leaving...]
<Esmil>
la_mettrie: there is a msp430x variant, but it seems it only adds a 20bit address space. some msp430s have a multiplier as a memory mapped peripheral though
jacklsw has joined #riscv
josuah has joined #riscv
<josuah>
I am surprised by the GD32V: a risc-v MCU by GigaDevice sold for cheap, with a lot of peripherals!
<josuah>
it has two CANs (as for automotives), DAC (often there is only PWM as part of timers for that), USB helpers, DMA, the usual I2C+I2S+SPI+UART+PWM+ADC+RTC+TIMER
<josuah>
I wonder if there is any other RISC-V MCU around, as this one already covers a lot of use-cases
<Esmil>
josuah: there is also the esp32-c3, bl602 with bluetoothand a new ch32v307 with built-in usb and ethernet phys
<josuah>
yay, looks like multiple semiconductors makers are offering the RISC-V alternative
<josuah>
Esmil: thanks, I went looking now
<josuah>
there is also the SiFive FE310 project
<Esmil>
yeah, but that's mostly an expensive tech-demo
<gordonDrogon>
Sipeed Tang Nano and others in the same line look interesting.
<josuah>
could be fun for diving down the working of a computer for when I'm feeling good enough at it (planned in 102 years or so :P)
<gordonDrogon>
that seems to tick all the boxes in a system that would fit my needs... if only I could buy one...
<josuah>
I have never used an FPGA, can they sometimes go faster than software?
<gordonDrogon>
josuah, I've not used them either, however given the bitcoin, etc. miners turned to fpga's rather than software, I'd guess so ...
<josuah>
maybe for a few things often done in dedicated hardware, like real-time image/network processing
raiaq has quit [Write error: Connection reset by peer]
raghavgururajan has quit [Remote host closed the connection]
sm2n has quit [Remote host closed the connection]
ddevault has quit [Remote host closed the connection]
<gordonDrogon>
one mans hardware is another mans software ...
ddevault has joined #riscv
raiaq has joined #riscv
sm2n has joined #riscv
raghavgururajan has joined #riscv
<josuah>
maybe very fit when there is one single kind of task that is always the same on software (like crypto, codec) that would take a lot of resource in software, but not frequent enough so there are dedicated hardware for them
<josuah>
maybe also a convenient way to learn VHDL/verilog
<gordonDrogon>
enter FPGAs, etc. and is Verilog software or a hardare descriptor "language" ?
<gordonDrogon>
it's all very blurry these days (to me, at least)
<josuah>
FPGA sounds much in-between software and hardware
<gordonDrogon>
FPGA to custom IC/ASIC? probably relatively easy today.
<josuah>
> Today, gate arrays are evolving into structured ASICs that consist of a large IP core like a CPU, digital signal processor units, peripherals, standard interfaces, integrated memories, SRAM, and a block of reconfigurable, uncommitted logic. -- https://en.wikipedia.org/wiki/Application-specific_integrated_circuit
<josuah>
so there are also chips with both a general purpose core, common peripherals, and then an FPGA block on them
<josuah>
that's often surprising me! as if china was dropping the rest of the world that it does not need that much anymore
<josuah>
I mean for the engineering part
<josuah>
if we have this chain: the bumblebee risc-v core from nuclei (doing the IP) built by gigadevice from factories, all of them china-based, then firmware done by various product makers for integration in the end-devices
<josuah>
all corps are chinese here, if only the end device is sold to the "rich occidental" in the end, so why bother with making the doc in english
<josuah>
of course I am much happier when I get doc in English!
<josuah>
I said "rich occidental" because it is the stereotype, but do not know how the chinese market really works
<gordonDrogon>
I think it jus takes time to push things through.
<josuah>
every extra attempt to grok how hardware works and publishing FOSS software that use it is another step :)
jacklsw has quit [Read error: Connection reset by peer]
huseyinkozan has quit [Quit: Konversation terminated!]
<gordonDrogon>
I can't help but think there must be a better way, but if anyone wants to comment on my newb-level risc-v assembler then feel free: https://unicorn.drogon.net/ohex.s.txt
gaude has joined #riscv
<enthusi>
gordonDrogon: inc/dec look nicely 6502-ish but are (sadly) no official pseudo ops, right?
<gordonDrogon>
I'm using gnu as - it has macros which are usable....
<enthusi>
it so happens that I just coded something similar here
<enthusi>
but not using a LUT which might improve size and speed?
<gordonDrogon>
the putchar thing is a macro too - just sb \reg,(s0) where s0 has a constant 0xFFFF0000 which is picked up by my emulator for a virtual uart.
<gordonDrogon>
well, the LUT is 16 bytes/4 words, so you have 4 more instructions to play with to save some size ;-)
<enthusi>
sorry for the messy register use in there :)
<jrtc27>
LLVM's assembler has GN-style macro stoo
<jrtc27>
*GNU
<gordonDrogon>
not sure how digit 0 + 7 + 16 = 48 (ascii '0') but I think I see what you're doing there
<enthusi>
my offsets are likely a bit hardcoded to my specific charset
<gordonDrogon>
oh, petscii or something?
<enthusi>
ascii but skipping non-printable characters
<gordonDrogon>
gotcha.
<gordonDrogon>
jrtc27, what I'd really like is a way to alias register names - not sure it's do-able but I think I can pass it through cpp first or something.
<enthusi>
the bronzebeard assembler I'm using can do that (reg alias)
<enthusi>
not using that, though
<enthusi>
it CAN help alot but also mislead easily
<gordonDrogon>
sure.
<gordonDrogon>
suppe time here, back later..
<jrtc27>
I think some arches let you do that with .set
<jrtc27>
but that doesn't seem to work for riscv in either assembler
<jrtc27>
people normally use cpp for this
<jrtc27>
and if you name your file foo.S and use gcc or clang on it it'll automatically preprocess and assemble it
<jrtc27>
(whereas foo.s will only assemble)
BOKALDO has quit [Quit: Leaving]
geranim0 has quit [Ping timeout: 256 seconds]
Sos has quit [Quit: Leaving]
mahmutov has quit [Ping timeout: 256 seconds]
Ivii has quit [Quit: Leaving]
<gordonDrogon>
thanks.
<gordonDrogon>
will give that a go in a bit.
<gordonDrogon>
enthusi, thinking about your method now - there's no 'carry bit' in risc-v which I still have in my 6502 brain (just call me bender ;-) so that one less thing to worry about in RV land...
NeoCron has quit [Quit: Leaving]
jrjsmrtn has quit [Read error: Connection reset by peer]
jrjsmrtn has joined #riscv
jrjsmrtn has quit [Ping timeout: 240 seconds]
jrjsmrtn has joined #riscv
freakazoid333 has joined #riscv
freakazoid333 has quit [Ping timeout: 240 seconds]