Julien F

Julien F

@julien.dokitek.com

💽 I love all things tech and IT 💻 ⚡️ FPGAs, IoT and Digital Design 🏃‍♂️Running and Fitness Cat person 🐈‍⬛

234 followers136 following777 posts

There’s a very simple reason everyone, every time, think the next model is revolutionary : you treat it like a benchmark, asking things that you already know how to compare against, like you did with every model before that blew your mind. This is the honeymoon phase, over and over again.

I think I experience some kind of deep AI fatigue. Not because I think it’s bad or anything, -I daily max 20x subscriptions, this is the best tool- but because every tech influencers and « open to work LinkedIn bros » are treating each patch release like the second coming of Jesus

Julien F reposted

Trump sent thousands of armed federal officers into our state, and it took just one day for them to kill someone. Now he wants nothing more than to see chaos distract from that horrific action. Don’t give him what he wants.

Julien F reposted

Charlie Kirk spent his life‘s work and all of his energy and time targeting out-groups while arguing for a world in which gun massacres would be easy to enact, plentiful, and inevitable, and he became famous and wealthy doing it, and we’re now not supposed to mention that because it’s not polite.

Je découvre aujourd’hui avec effroi l’existence de tout un pan de notre société pour lequel le qualificatif de sociopathes ne saurait être assez fort. Quelle horreur, quelle infamie

Marie Turcan@turcanmarie.bsky.social

Jean Pormanove, de la chaîne de streaming sur Kick, est décédé dans son sommeil, lors d’un tournage diffusé en direct. Il était la cible d’humiliations et de sévices de la part de ses partenaires streamers, avait révélé Mediapart il y a 8 mois. www.mediapart.fr/journal/fran...

Signing this one should be mandatory, what the fuck

tosi-chan 🤎💜 | VTuber@tosichan.bsky.social

PETITION TO MAKE OUR WORLD A BETTER PLACE, EU citizens sign the petition "Ban on conversion practices in the European Union" 🩷 if you aren't a citizen of EU you can send this petition to EU citizens I signed it now its YOUR turn! eci.ec.europa.eu/043/public/#... #eu #lgbtq+ #lgbt #europeanunion

That’s it, I did it ! I designed a fully functional RV32I RISC-V pipelined (!!) processor. What an endeavor it has been 😭 It can run at 55MHz on the DE10-Lite. Thanks to everyone that made this achievement possible ! Stay tuned for more FPGAs shenanigans ! #riscv #iot #fpga

Welp… I started an #opensource, kind of #osh thing. 🧑‍💻 I’m designing a RISC-V 6 steps pipeline CPU core, synthesizable on real hardware. Once the core supports the full RV32I instruction set (bare metal, no CSRs), I’ll add some IO, timers, and turn it into an MCU. I’m impatient to show it to you !

Today’s goal is to implement data and control hazard handling LW is the main challenge here, the registered BRAM of the FPGA hardware forces me to implement an FSM to deal with the extra latency, and I need to stall all the pipeline except the writeback stage, not just the « upstream » stages.

Now that I think about it, SW will also be a challenge once I add some memory mapped IO (i2c, spi peripherals) with various latencies. That can be solved by adding datavalid (readdatavalid/writedatavalid) signals and tweaking the FSM state transition logic.

Welp… I started an #opensource, kind of #osh thing. 🧑‍💻 I’m designing a RISC-V 6 steps pipeline CPU core, synthesizable on real hardware. Once the core supports the full RV32I instruction set (bare metal, no CSRs), I’ll add some IO, timers, and turn it into an MCU. I’m impatient to show it to you !

Today’s goal is to implement data and control hazard handling LW is the main challenge here, the registered BRAM of the FPGA hardware forces me to implement an FSM to deal with the extra latency, and I need to stall all the pipeline except the writeback stage, not just the « upstream » stages.

Welp… I started an #opensource, kind of #osh thing. 🧑‍💻 I’m designing a RISC-V 6 steps pipeline CPU core, synthesizable on real hardware. Once the core supports the full RV32I instruction set (bare metal, no CSRs), I’ll add some IO, timers, and turn it into an MCU. I’m impatient to show it to you !

Progress on the initial goal is around 60-70% It’s missing a few instruction (lb, lh, sb, sh and only one B-Type, beq is implemented right now) and the Hazard Unit. A challenge with real hardware is that I can’t just throw the data memory in the datapath and implement stalls in a « textbook way »

Welp… that escalated quickly 😅

Julien F@julien.dokitek.com

Adding new instructions has reached a diminishing return point, I think I’m ready to move on my first viable architecture : multi cycle cpus. Single cycle processors are great to understand what a datapath and a control unit is, but it’s impossible to interface with complex devices. I’m so pumped!

It runs the same C-code, but « slower ». Slower as in « more clock cycles », but these clock cycles can be much shorter, and some instruction can take less clock cycles, because the combinational path is split in shorter segments

I promised more FPGA shenanigans. What about a custom RISC-V cpu that can run C code ? I’ve designed a primitive single cycle RV32Ish (it’s missing a few instr) CPU and implemented it on the DE10-Lite. It broke me 😂 What a journey it has been from the @shawnhymel.bsky.social FPGA course to this !

View full thread

Adding new instructions has reached a diminishing return point, I think I’m ready to move on my first viable architecture : multi cycle cpus. Single cycle processors are great to understand what a datapath and a control unit is, but it’s impossible to interface with complex devices. I’m so pumped!

My « dokifive zero » implements : add/addi sub/subi or/ori and/andi slt/slti lw/sw beq/bneq jal/jalr lui/auipc It implicitly supports these pseudo instructions mv la/li j/jr/ret/call It took me several weeks of learning and understanding, then a full day of hardware design, not bad !

I promised more FPGA shenanigans. What about a custom RISC-V cpu that can run C code ? I’ve designed a primitive single cycle RV32Ish (it’s missing a few instr) CPU and implemented it on the DE10-Lite. It broke me 😂 What a journey it has been from the @shawnhymel.bsky.social FPGA course to this !

Here’s the c code it runs. I compiled it using a custom linker script and disassembled the .text section to copy the instructions words. Put it into a $readmemh to put in into « ram » (Quartus is not inferring RAM because of the combinational read, it’s using flip flops 😂)

The 0x300 word is mapped through a rudimentary memory controller to the six seven segments using decoders. I can’t stress enough how Modelsim saved my sanity. Waveforms are not that easy to read and make sense of, but once you do, tracking really small typos becomes way easier !

Now that #AppleIntelligence is available in France, I promply installed it. I'm shocked at how bad it is. Read the reviews, i was sure you were all exaggerating. It's so bad the "Urgent notifications" thing disturbed me and urged me to respond to... a scam... Don't get me started on the rest...

Spotted my first #Swasticar « buyers remorse » a few days ago, but I don’t buy it, let me explain License plates numbers here are issued on a chronological fashion. « GV » kinda means « mid 2024 » Elon was already batshit crazy at this point. It’s more like a « please don’t key my car » Fuck that

Rev 2 is now assembled and working ! With only 1 botch wire 😂. I trusted KiCAD a bit too much with the diode footprint. 84% efficiency at 15V to 170V@20mA, not that bad, I think the transformer is not very efficient. Micromax package was challenging to hand solder 😅 USB-C PD works!

Revision 2 of my Nixie Tube power supply is now in production. It’s rated for 6 IN-14 tubes @ 2mA, and works with either an USB-C PD 3.0 3A input or a direct 15VDC pin header. I’ll open source the final revision once I’m sure it does not blow up and everything is fine #oshw #opensource #nixie

Rev 2 is 38x45mm, still on the big side, but at least all the components are rated properly. Final revision will have a more standard horizontal USB-C port instead of the vertical one. BOM should be around 15$

I think I settled on something for my « endgame » side project : A Nixie Tube clock based on a custom RISC-V processor implemented on an FPGA, running custom C code. It combines every aspect of Digital Design and Computer Architecture, plus it’s a fun project. Here’s the power supply! (cont)

Please note the botched diode 😂. What I wanted with this one was to design a high voltage flyback converter from scratch. I think I can downsize multiple component a fair bit but nailing the first revision (minus the diode) is already quite a miracle ! Voltage is quite high due to resistor values

…but as a proof of concept, I’m really proud !! I think I need a soft charging circuit for this output cap though, listen to the coil whine at startup 😂 Vpp is less than 0.1V under a 3W load (10% of target) Can’t wait for the next steps !! Stay tuned ⚡️ Oh and thanks @ifixit.com for the FixHub!

Julien F reposted

Intel's Pentium processor (1993). Looking inside the chip , I found a large, complicated circuit just to multiply by 3 (lower right). Why? The Pentium uses a fast technique to multiply 64-bit number and it turns out that 3 is a special case. Let's take a closer look at multiplication... 1/N

Puzzled about the @frame.work event! On one hand, awesome work with the 13, which is now a mature piece of hardware with valuable updates. Then the 12… wwwokay I guess ? A modular touchscreen 2in1 is fire 🔥, but the bezels 😬 Then the mindf*ck begins (cont…)

I understand the « let’s put this cool chip somewhere », but the desktop is a miss for me. That’s a desktop less modular than a desktop 🤷‍♂️. And… now… the ugly… what the hell with the 16 guys ? I know you probably have something for later, but you’re pulling a Nintendo on us, not announcing it…

This is not the way. I put a preorder on a maxxed out 13 because I’ll need an x86 machine with some gpu performance for the end of the year, but I don’t want to invest on a 16 (I would have) that will be obsolete in the coming months. I know it’s upgradable, but upgrades cost money.

Continuing my learning journey! Writing dirty HDL code is already far from easy, but writing clean HDL is way harder ! Reading the amazing book "Digital Design and Computer Architecture" by Sarah and David Harris, I decided to implement in hardware one of the examples, the traffic light controller.

View full thread

Continuing my learning journey! Writing dirty HDL code is already far from easy, but writing clean HDL is way harder ! Reading the amazing book "Digital Design and Computer Architecture" by Sarah and David Harris, I decided to implement in hardware one of the examples, the traffic light controller.

View full thread

The book shows how to write self-testing benches, it's way easier than forcing signals in Modelsim! I've learned a lot writing testbenches for this project and others exercises! I also learnt that HDL that can be simulated won't necessarily synthesize, this was new !

I want to implement some more funny hardware before diving into the real challenge of this book : micro-architecture and RISC-V design. It is said that designing a CPU is a rite of passage for every EE, I can't wait !

Continuing my learning journey! Writing dirty HDL code is already far from easy, but writing clean HDL is way harder ! Reading the amazing book "Digital Design and Computer Architecture" by Sarah and David Harris, I decided to implement in hardware one of the examples, the traffic light controller.

Writing clean and timing accurate HDL, with proper FSMs is way more difficult than botching up a VGA controller. This seems counter intuitive but the VGA timings are tolerant enough to allow for small errors. Even getting a clock divider cycle accurate was a challenge on itself