• Vintage bipolar analog switch

    01/20/2026 at 00:52 1 comment

    It's not exactly related to Ted Yapo's blog https://hackaday.io/project/162998-the-rise-and-fall-of-pulses/log/158851-a-toy-diode-sampler but it's close...

    Inspired by Curious Marc's recent video:

    I had to try a sim with Circuitjs and it works like a charm !

    Why does it matter to me ?

    Because I have struggled a LOT to make a DFF gate with bipolar transistors... I had found a version that looked promising for a latch but it became unstable when connected to other devices.

    The insights of this pass gate could probably help solve this enigma at last.

    Oh and I should get the polarities right....

    And then, there is this gem : https://w140.com/tekwiki/images/9/97/Frye_s4_gate.pdf where the value is sampled at the falling edge, almost working as a DFF but with diodes.

  • LibreSOC and TinyTapeout pictures @FSiC2024

    06/23/2024 at 01:36 6 comments

    We talk a lot about architectures and semiconductors.

    At the FSiC2024 conference in Paris, I saw real integrated circuits and took pictures, including TinyTapeout chips and the LibreSOC samples/prototypes.

    I have uploaded some of them on Wikipedia to contribute to the Libre-SOC page.

    And here Thorsten showing some TT samples in bare die and QFN package.

    And one board demonstrated by @matt venn  !

    .

  • More operator symbols

    11/24/2023 at 14:51 0 comments

    To say that I am frustrated by the vocabulary of some common languages is an understatement. JavaScript introduced the ">>>" symbol for the arithmetic (sign-preserving) shift but we're still far from satisfaction.

    The Pascal family of languages don't bother with such details because operators use all-letters operators : sll, shl... But the C-like syntax is preferred today so I need to be creative.

    Carry-related operations are traditionally absent, which is a shame. So let's skip directly to the rotations : there is no direct symbol for this, but I have long wanted to modify the shift symbols:

    <<@  rotate left
    
    >>@  rotate right

     Or maybe a shorter version:

    <@  rotate left
    
    @>  rotate right

    which is less effort than having to analyse the syntax tree and look for a compound operation (OR of two SHIFTs with the same arguments and the shift amounts sum up to 32 or 64).

    Now there is an even trickier symbol to choose : I need UMIN, UMAX, SMIN and SMAX (unsigned and signed minimum and maximum) The < and > symbols will be used but how to discern between signed and non signed operations ?

    <? MIN
    
    ?> MAX

    The Dollar symbol looks like a S so

    <$ SMIN 
    
    $> SMAX

    could do the trick.

    Any advice or prior art is welcome !