home bbs files messages ]

Just a sample of the Echomail archive

Cooperative anarchy at its finest, still active today. Darkrealms is the Zone 1 Hub.

   CBM      Commodore Computer Conference      4,328 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 2,086 of 4,328   
   Stephen Walsh to All   
   Commodore Free Magazine, Issue 95 - Part   
   24 Nov 16 13:00:02   
   
   such as 8-bit computers.  This reminds me of the good   
   times I spent with these machines in my youth were it wasn't just "old   
   stuff" but the high-tech of that time.   
      
            - - - - - - - - - -   
      
   CF:  When and why did you become involved with computers and especially   
   Commodore Computers?   
      
   AB:  Hmm, it must have been when I was 12 years old maybe, my brother was   
   attending a computer programming course at school and at that time I owned   
   a book explaining how to program in BASIC.  So I wrote a small game in   
   BASIC just on paper as I did not have access to a real computer.  My   
   brother typed my code into the school computer (which was an Apple II)   
   debugged it for me and in the end it was working.  It was a car race   
   simulation game with vertical scrolling border just with print statements.   
   It was very simple, but it was my first code...  .  Then at the age of 14,   
   I did a student-job and earned the money for my first computer.  It was a   
   Commodore 64.  I was not interested so much in gaming but I spent the rest   
   of my youth learning how to program the 64 down to the last memory bit.   
      
            - - - - - - - - - -   
      
   CF:  Can you tell our reader about FPGA SID, firstly what is FPGA, and for   
   the uninitiated, what is the Commodore SID chip?   
      
   AB:  FPGA stands for "Field Programmable Gate Array".  FPGAs are devices   
   can be programmed to fulfill any logic function you want.  Every digital   
   circuit consists of so called gates that can do very basic logical   
   operations such as 'and', 'or' and 'not'.  In an FPGA you have thousands of   
   these such gates, but without any connections between them.  Programming   
   the FPGA means you have to define how these gates should be connected to   
   implement a certain digital circuit.  This description of the connections   
   can be loaded into the FPGA as you would load them into a computer program   
   into memory for execution.  FPGAs are perfect for prototyping digital   
   semiconductor devices.  They are very fast and very flexible.   
      
   The Commodore SID chip, well I don't really have to explain that do I, I am   
   sure all the readers know, anyway SID stands for "Sound Interface Device".   
   It is a sound synthesizer chip that has been used in the Commodore 64 and   
   many of its successors.  At the time the chip was developed I would say it   
   was probably the best sound chip of its type you could get.  In   
   contradiction to the simple 'beeping devices' that were used in other   
   computers, the SID was inspired by music synthesizer concepts such as the   
   famous MOOG synthesizers.  This chip was very popular and still is up to   
   today.  Unfortunately these chips are not produced any-more and the   
   existing SID devices are starting to reach the end of their lifetime.   
      
            - - - - - - - - - -   
      
   CF:  On the assumption now that most readers will be aware of the Commodore   
   SID sound chip Lets say it's the sound creation device in the Commodore 64   
   (amongst other machines), so your intention is to re create this hardware   
   chip in programmable logic   
      
   AB:  Yes exactly.  The FPGSID project targets for a pin compatible   
   in-circuit replacement of the original SID chip.  Mainly to overcome with   
   the situation that it as time goes on it will get harder and harder to find   
   the original chips for repairing Commodore computers, also because nowadays   
   the SID chip is used in musical instruments that require not only one chip   
   but multiples of them.   
      
            - - - - - - - - - -   
      
   CF:  Wasn't one of the SID chips characteristics that is was a hybrid of   
   analogue and digital technologies, no two chips sounded the same, and its   
   sound could change with temperature?  Surely, this is impossible to   
   re-create just in software.   
      
   AB:  Yes, you are right.  And in my eyes this is one of the biggest   
   disadvantages of the SID chips.  While the digital sound generator parts   
   have no variation among different devices, the analogue filters and mixer   
   circuits have large tolerances and as you say are susceptible to   
   temperature changes.  This results in a large sound variance between the   
   SID devices especially when the filters are used.  Some sound really great   
   however others sound very poor.  And it's always a matter of taste:  What   
   the one prefers could sound ugly for one user but great for another;   
   nevertheless today's software emulation of the SID chip is quite advanced.   
      
            - - - - - - - - - -   
      
   CF:  So what is possible to re-create?   
      
   AB:  The best emulation of the SID chip is by a software library called   
   'resid'.  This library is part of many popular Commodore emulators such as   
   Vice or JSidplay etc.  Resid can reproduce the tiny imperfections of the   
   analogue circuitry in a very accurate manner.  Basically it is doing a   
   numerical circuit simulation almost like a Spice simulation would do (Spice   
   is a standard method of simulating electronic circuits).  It reproduces all   
   smaller and bigger non-linearities of the SID chip as well as it's timing   
   behaviour very accurately.  Some emulator engines even allow changing the   
   configuration to select multiple profiles representing different SID chips.   
   In the end the overall sound reproduction of resid is very close to the   
   original SID.   
      
   FPGASID is based on the same numerical model as resid.  In some places   
   however things are a bit different because compared to software, FPGAs work   
   differently.  However in principle it is the same thing.  That's why   
   FPGASID has a sound reproduction quality that is absolutely comparable to   
   what resid does.   
      
            - - - - - - - - - -   
      
   CF:  Apart from the actual re-creation of the Sid chip is it possible to   
   better the original SID chip, and as you say, stability is one area the SID   
   suffered from, could anything else be improved?   
      
   AB:  One main advantage is that FPGASID will be better in terms of   
   reproducibility (no variation among the devices).  But of course it will   
   have some additional features that the original SID does not have and   
   always keeping the full compatibility with the original.   
      
            - - - - - - - - - -   
      
   CF:  Features?  What kind of features do you have in mind?   
      
   AB:  First of all I am designing FPGASID towards a full featured stereo   
   solution.  So basically you will have two SIDs similar to other stereo   
   solutions and compatible to existing stereo software.  Other potential   
   features could be a SPDIF compatible digital audio output for maximum sound   
   quality.  Maybe programmable wave tables or an 8 or 16 bit wide sample   
   playback register.  But the last two features would break compatibility so   
   I am not so sure about them mainly because there will be no software   
   supporting such features on its release.   
      
            - - - - - - - - - -   
      
   CF:  So the device won't sit in the SID socket will it?, Surely it will be   
   too big, how does it connect to the C64?   
      
   AB:  Oh no!  It definitely WILL sit in the SID socket!  The current   
   prototype is based on a commercial FPGA evaluation board.  It actually sits   
   in the SID socket via some adaptor board.  Of course due to the device's   
   size, it is no longer possible to close the case of the C64 at this present   
   time, But this is only the first prototype.  Currently I am working on a   
   new prototype that will be much smaller than what you see today.  The goal   
   is to keep everything so small that it is not bigger than the 28-pin socket   
   of the SID.  This may not be 100% achievable but from what I can say today,   
   it will still be small enough to be just a small module for the SID socket.   
   This will be achieved by using another version of the FPGA with a smaller   
   case and by drastically stripping down the surrounding circuits to what is   
   really required.   
      
            - - - - - - - - - -   
      
   CF:  How big a market do you see for such a device?  For example, they are   
   using the original SID chips in music synthesisers.  Are you planning   
   something like this or is it primarily to design a compatible "chip"?   
      
   AB:  Hard to say really, I have any idea about a potential market size.   
   The primary idea is indeed to have a compatible chip replacement, enhanced   
   with some nice extra features.  For this the market will certainly grow   
   once more and more of the original chips will stop working.  But I already   
   have some requests from other projects that would like to integrate FPGASID   
   into their implementation.  Also synthesizer people seem interested so   
   there will be definitely more possibilities in the future.   
      
            - - - - - - - - - -   
      
   CF:  You state its Mos6581 and Mos8580 compatible.  Can you explain for the   
   benefit of our reader who may be unaware the differences in these SID   
   chips?  Also, does this mean it will be switchable to emulate both ?   
      
   AB:  The MOS6581 was the original version of the SID chip produced by   
   Commodore.  At one point in the late 80s Commodore modernised their chip   
   production process from NMOS to HMOS technology, this required some rework   
   of the SID design to adopt it to the new process.  Doing this redesign the   
   designers also repaired some bugs in the SIDs analogue circuit that came   
   out was the MOS8580 chip.  It is fully register compatible to the older   
   6581 but it sounds quite different especially the filters; that sound   
   somehow 'cleaner' and more reproducible.  It is however much easier to   
   recreate a 8580 device because everything is much more linear, many parts   
   of the 6581 simulation can simply be switched off to get a reproduction of   
   the 8580 chip, in FPGASID it will be possible to switch between both chip   
   versions by a simple register write.   
      
            - - - - - - - - - -   
      
   CF:  How far from a purchasable product is the project at this moment, and   
   when will products be available for sale?   
      
   AB:  Technically most hurdles are now overcome, what remains is just hard   
   work.  Unfortunately the FPGASID team is completely understaffed, Or in   
   other words:  It's only me that is doing all the work.  Since I do   
   everything in the little spare time that I have beneath a demanding job,   
   the progress is very slow at the moment.  I hope to have the next prototype   
   ready by the end of this year, this prototype will be available for   
   selected persons who volunteer to contribute to the project.  But   
   volunteers are always welcome!  Currently I would like some help with the   
   PCB design or with the Verilog coding for the FPGA.  A final version of   
   FPGASID will follow once the debugging of that prototype is completed, so   
   definitely not before next year.  I will try to find a partner for the   
   sales of the final FPGASID, ideally everyone will be able to order it.  The   
   price is also not fixed yet.  I have to admit that FPGAs are quite   
   expensive.  So the pure material cost of FPGASID will start quite high.  I   
   am targeting a price in the range of what a normal stereo solution with two   
   SID chips would cost.   
      
            - - - - - - - - - -   
      
   CF:  Is there a website we can compare an original SID to an FPGA version   
   of the chip?   
      
   AB:  Some examples can be found on the project description page of the   
   FPGASID homepage (www.fpgasid.de/project-definition).  In the last months I   
   did some listening tests with volunteers to check the sound quality and   
   find the remaining bugs.  I made many recordings comparing FPGASID against   
   an original 'reference' 6581 and other SID chips and of course the VICE   
   emulator.  Maybe I should put these recordings on the web site for a   
   broader audience.   
      
            - - - - - - - - - -   
      
   CF:  The FPGA code, who wrote this originally, and is this freely available   
   to anyone?   
      
   AB:  The code is entirely written by myself.  Of course I had a lot of   
   inspiration from the resid library so credits should also go to the authors   
   of resid.  At the moment the code is not in the public domain, but I am   
   planning to release the full code once the first working prototype is   
   available.  I think it does not make sense to publish it before because   
   until then no platform will be available were you can run it.   
      
            - - - - - - - - - -   
      
   CF:  Do you have any final comments you would like to end the interview   
   with?   
      
   AB:  I want to thank everybody who is showing interest in the project, it   
   gives me a lot of motivation to know that some people are already waiting   
   for the first hard   
      
   --- MBSE BBS v1.0.4 (GNU/Linux-x86_64)   
    * Origin: Dragon's Lair ---:- dragon.vk3heg.net -:--- (3:633/280)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca