Hello all I need to run an old firmware for a Siemens SAB 80C537 microcontroller unit (MCU). The MCU is now obsolete (it's from the late 1980s). The firmware is compiled from several thousand rows of assembly language. It would take a long time to understand the code and re-program it in C. So I'm thinking of using an 8051 IP-core for a FPGA and run the firmware code without any changes to the code. Any one here had any luck with this kind of problem?
Need to run old 8051 firmware
Started by ●April 19, 2010
Reply by ●April 19, 20102010-04-19
Smith schrieb:> I need to run an old firmware for a Siemens SAB 80C537 microcontroller unit > (MCU). The MCU is now obsolete (it's from the late 1980s). > > The firmware is compiled from several thousand rows of assembly language. It > would take a long time to understand the code and re-program it in C. > > So I'm thinking of using an 8051 IP-core for a FPGA and run the firmware > code without any changes to the code.Unless you have an FPGA implementation of /exactly/ the 537, it probably won't work. Remember that this MCU also contains very many special function registers that most probably are used by the software, but not covered by the available, more "generic", IP cores. Several thousand lines of 8051 assembly, however, don't appear too much to port. If you have the sources (as it sounds), you can probably find the SFR-relevant code sections rather easily and port the application (still in assembly language) to your new implementation on any current 8051 - or an IP-core in an FPGA. Unless you have an FPGA in your new design anyway, I would however suggest to look for a new flash-based 8051 MCU. It will probably be less porting expense. Have a closer look /why/ the 537 was choosen for this application - was it the number of ports, or any special peripheral hardware function? Get a modern chip that fits these requirements best. "Without any changes to the code" is not possible IMHO. Tilmann
Reply by ●April 19, 20102010-04-19
On Mon, 19 Apr 2010 15:53:25 +0200, "Smith" <smith@donotwantmail.com> wrote:>Hello all > > > >I need to run an old firmware for a Siemens SAB 80C537 microcontroller unit >(MCU). The MCU is now obsolete (it's from the late 1980s). > > > >The firmware is compiled from several thousand rows of assembly language. It >would take a long time to understand the code and re-program it in C. > > > >So I'm thinking of using an 8051 IP-core for a FPGA and run the firmware >code without any changes to the code.There are lots and lots of MCS-51 microcontrollers still on the market. Silicon Labs, Atmel, and Infineon among many others. I'd look there first, before committing to instantiating an FPGA core. -- Rich Webb Norfolk, VA
Reply by ●April 19, 20102010-04-19
Reply by ●April 19, 20102010-04-19
Look here: http://www.littlediode.com/components/80C537_Integrated_Circuit.html?NO_COOKIE_WARNING=2&ti=ca697e2b03146363b5a9601ab6592a49&xid=60b420f64a0bf7ac68d8779fdb2b8008
Reply by ●April 19, 20102010-04-19
I need about 100-200 parts. "Stefan Brr�ring" <stefan___@broering.de> wrote in message news:4bcc68c8$0$3291$8e6e7893@newsreader.ewetel.de...> Do you need one 80537, a few, or lots of MCUs?
Reply by ●April 19, 20102010-04-19
Smith wrote:> Hello all > > I need to run an old firmware for a Siemens SAB 80C537 microcontroller unit > (MCU). The MCU is now obsolete (it's from the late 1980s). > > The firmware is compiled from several thousand rows of assembly language. It > would take a long time to understand the code and re-program it in C. > > So I'm thinking of using an 8051 IP-core for a FPGA and run the firmware > code without any changes to the code. > > Any one here had any luck with this kind of problem?I'm with the rest of the folks here: (a) Why try to rewrite this in C? Why not port this to a new 8051 using the existing code as a base? If the code is well written and commented then the only parts that will have to be changed will be the parts that talk to hardware, although depending on the code and the application this may take some head-scratching. (b) You're probably far better off to make this work with some new spin of an 8051, with the peripherals that you need to get the job done. (c) I could easily see trying to exactly replicate an old application, complete with snazzy peripherals and maybe timing loops, to be a never-ending hassle. You know the old saw about the last 10% of the work taking 90% of the time? I think this would be a way to design a project where the last 1% of the work takes 99% of the time. If I'm wrong, it'd only be because you'd see the last 0.1% of the work taking 99.9% of the time. Software is cool because it's easy to change, so you can use it to help your product dodge around changing marketing requirements and hardware issues. Chaining your whole project to a large chunk of dead code is just asking for a nightmare. -- Tim Wescott Control system and signal processing consulting www.wescottdesign.com
Reply by ●April 19, 20102010-04-19
On Apr 19, 7:43=A0am, "Smith" <sm...@donotwantmail.com> wrote:> I need about 100-200 parts. > > "Stefan Brr=F6ring" <stefan...@broering.de> wrote in message > > news:4bcc68c8$0$3291$8e6e7893@newsreader.ewetel.de... > > > Do you need one 80537, a few, or lots of MCUs?Let's go with 200 parts. Someone pointed you to a web site that listed the cost at roughly US $50 each at that quantity. You would probably spend more that $10,000 moving the existing code to whatever new solution you found. So unless you can find a replacement for less than zero dollars, it's less expensive to pay the (exorbitant) per-chip price. Even though I think it would be "fun" to design it out, it's not responsible engineering. RK
Reply by ●April 19, 20102010-04-19
"Smith" <smith@donotwantmail.com> wrote in message news:4bcc6082$0$45179$afc38c87@read01.usenet4all.se...> Hello all > I need to run an old firmware for a Siemens SAB 80C537 microcontroller > unit (MCU). The MCU is now obsolete (it's from the late 1980s). > > The firmware is compiled from several thousand rows of assembly language. > It would take a long time to understand the code and re-program it in C. > > So I'm thinking of using an 8051 IP-core for a FPGA and run the firmware > code without any changes to the code. > > Any one here had any luck with this kind of problem?I'd try tweaking firmware first. Looks like this one is not standard 8051 deriviative. Has 32bit math MDU and 8 DPTR registers. First thing I'd do is see if these odd features are being used. If not, it would be easy to port to another 8051 derivative. If so, porting challenge could range from a minor hassle to impossible. Then C port might be way to go. I'd get a good firmware engineer to evaluate code before moving forward.
Reply by ●April 19, 20102010-04-19
Smith wrote:> Hello all > > I need to run an old firmware for a Siemens SAB 80C537 microcontroller > unit (MCU). The MCU is now obsolete (it's from the late 1980s).Perhaps a brief explanation of why might have been useful. Need to make some more old units, need to upgrade for a newer product?> The firmware is compiled from several thousand rows of assembly language. > It would take a long time to understand the code and re-program it in C.One application I did many years ago was all hand-coded 6800 machine code. About 4k of it. This was input to the system by the switch and step method. So in an actual assembler, this should not be too much of a hassle even if the code is 2 or 3 times that size.> So I'm thinking of using an 8051 IP-core for a FPGA and run the firmware > code without any changes to the code.Others have indicated that the parts are available from at least one stockist. Unless you need special certification of the parts that would seem to be the way to go to make more of an old product. On the other hand, if this is an update of the product-line then it would be much wiser to bite the bullet and select a more recent part offering that gives you the facilities you need. Then set to and understand the assembly code listing so that you can re-work the system and improve it as you go. -- ******************************************************************** Paul E. Bennett...............<email://Paul_E.Bennett@topmail.co.uk> Forth based HIDECS Consultancy Mob: +44 (0)7811-639972 Tel: +44 (0)1235-510979 Going Forth Safely ..... EBA. www.electric-boat-association.org.uk.. ********************************************************************





