Hallo allemaal, ik heb een apparaat waarin bovenstaande processor is gemonteerd, maar werkt nog gedeeltelijk. Probleem is dat enkele output poorten hoog blijven door electronsiche schade verderop op de print. Processor is nog wel werkende, dus nu mijn vraag wie heeft een idee hoe een nieuwe processor te voorzien van juiste programma? Evt kan ik nog aan originele firmware komen, dan is uitlezen niet noodzakelijk, maar meer voor de wetenschap! Wie heeft er wat info voor hoe en wat?
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Is dat niet een rom-mask versie?
Het exacte nummer wat je in de titel aangeeft kan ik nergens vinden.
[Bericht gewijzigd door henri62 op (52%)]
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Als het een mask-rom versie is dan kun je hem niet uitlezen.
(en valt er ook niks te programmeren, programma is intern met een masker gemaakt gedurende de fabricage)
Als 'ie romless is zit het programma in een externe flash of rom.
Het lijkt toch en versie met 256K flash te zijn:
https://www.ovaga.com/files/uploads/datasheets/d5829329-133e-4b94-886b…
Ik heb geen ervaring met dit model, maar wel ooit met een C166 gewerkt. Die had een bootloader ingebakken waarmee je software kom downloaden.
Misschien kun je hier iets mee: https://github.com/EcuProg7/C167BootTool
fatbeard
Honourable Member
Een goed begin is geen excuus voor half werk; goed gereedschap trouwens ook niet. Niets is ooit onmogelijk voor hen die het niet hoeven te doen.
De laatste twee letters zouden op een flash-versie kunnen duiden, zoals deKees al had gevonden.
Dat 'datasheet' is echter alleen een soort info-foldertje waar ERG weinig technische informatie in staat.
Ik vond deze: https://www.keil.com/dd/docs/datashts/infineon/c167cs_um.pdf
en deze: https://community.infineon.com/t5/DAVE/reading-and-programming-data-fl….
[Bericht gewijzigd door fatbeard op (17%)]
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
In hoofdstuk 15 staat de bootloader beschreven, dat is een serial downloader.
Wat ik me herinner is dat de bootloader in 2 of 3 stages geprogrammeerd moet worden. Pinnetje laag trekken en de CPU resetten ze hem in loader mode.
De 166 en 167 hebben hetzelfde mechanisme. Zie blz 313.
[Bericht gewijzigd door henri62 op (11%)]
Die serial downloader was echt het minimum aan hardware, en toch net voldoende. Je kon een klein aantal bytes naar RAM naar binnen schieten en dat werd dan opgestart. Dat was net genoeg om een eigen bootloader naar de RAM te laden en vandaar de flash te programmeren.
Allemaal bedankt voor de tips, doorgelezen en mee verder gegaan. Ik heb inmiddels een programmatje gevonden genaamd ST flash 2, is dat waarmee ik deze processor serieel kan flashen? Dan moet ik nog een RS232 level converter hebben en dan nog hoe aan te sluiten.. Tenminste dat denk ik..
ST flash 2? dat lijkt meer iets voor processors van ST, dus ik ben bang dat dat niet gaat werken.
Ik weet zo gauw niet wat dan wel werkt. Voor mij is het alweer 30 jaar geleden en toen maakte ik alles zelf. Maar daar is nu niks meer van over.
Ik zou nu toch beginnen bij Github : https://github.com/EcuProg7/C167BootTool
[Bericht gewijzigd door deKees op (14%)]
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
De CPU kun je in programming mode zetten door pin 104 (=!BOOT) via een 4k7 naar GND te trekken dan de CPU resetten (die pin zou een weak pullup moeten hebben van 100 of 120k). Ook wel in het datasheet P0L.4 / AD4 genoemd.
Die pin mag dan laag blijven.
Verder wacht de CPU op een ZERO byte op de ASC0 input (aka UART0).
De gebruikte pins van de UART zijn: RXD0(78=input) en TXD0(77=output).
Na ontvangst (auto baudrate detectie) stuurt de CPU zijn ID-byte terug wat voor CPU het precies is (0xC5 voor een C167xxx).
De programmeer software moet nu 32 bytes sturen voor de first stage bootloader (16 instructies dus maar).
Die 1-st loader moet nu een tweede iets grotere bootloader oid gaan laden.
Die 2-nd loader moet de flash applicatie gaan laden voor het juiste intern/extern device algorithme)
De 3-de loader (die de werkelijke flash programmeerd) moet de applicatie in RAM laden en de boel programmeren.
Zo heb je 3 stages nodig uiteindelijk.
Voor het lezen van de flash zijn alle 3 stages dus ook anders.
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Ik ben aan het zoeken geweest maar tot nu toe heb ik geen enkele spec gevonden waarin staat dat het een flash versie is, laat staan het interne programmeer algorithme.
Dat is wel een noodzaak om het ding te kunnen programmeren.
De boards die wij nog hebben daar zit een externe flash op waarvan wel het algo bekend is maar aan dat stukje heb je dus weinig aan voor de interne flash.
Ik denk dat je toch eens de link die deKees gepost heeft moet gaan bestuderen.
Toch nog iets gevonden voor de C167:
Voor de C166:
Beknopte flow van de 3-stage loader:
Bootstrap loader versions:
In de Device-List van de ALL-11 programmer staan alleen deze Infineon SAK types.
SAK-C164CI-8E
SAK-C164CM-4E
SAK-C505CA-4E
Waarschijnlijk is de SAK-C167CS of rom-less of een rom-mask type.
Dat hoeft niet het geval te zijn: https://www.keil.com/dd/docs/datashts/infineon/c167cs_um.pdf
Het kan om een customer specifiek device gaan maar dan weet je nooit precies wat er wel en niet inzit.
De basis C167CS uitvoering (tweede generatie) is met mask-rom of rom-less en ik vermoed dat alleen de derde generatie C164 op aanvraag kan worden uitgerust met OTP / Flash.
Allen wederom bedankt om de grijze massa te laten kraken. Ik zit momenteel op zee, maar zodra terug ga ik er weer verder mee. Dowload limiet is hier beperkt..
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Tot nu toe in documentatie gevonden:
C167CR-LM Version with PLL, 2 KByte XRAM, CAN module, 25MHz
C167CR-L33M Version with PLL, 2 KByte XRAM, CAN module, 33MHz
C167CR-LE 2 Kbytes 25 MHz (P-BGA-176-2)
C167CR-4RM Version with PLL, 2 KByte XRAM, 32 KByte ROM, CAN module,25MHz
C167CR-4R33M Version with PLL, 2 KByte XRAM, 32 KByte ROM, CAN module,33MHz
C167CR-16RM Version with PLL, 2 KByte XRAM, 128 KByte ROM, CAN module, 25MHz
C167CR-16R33M Version with PLL, 2 KByte XRAM, 128 KByte ROM, CAN module, 33MHz
C167CR-16FM Version with PLL, 2 KByte XRAM, 128 KByte Flash memory, CAN module
C167SR-LM Version with PLL, 2 KByte XRAM, 25MHz
C167SR-L33M Version with PLL, 2 KByte XRAM, 33MHz
C167S-4RM Version with PLL, 32 KByte ROM
C167-LM Basic version
C167CS-LM Version without on-chip program memory
C167CS-L16M3V 3V 16MHz
Zoals ik zei staat in dit document AP160701.pdf de hele boot sequence met de assembly code in de appendix.
Vraag is of het Siemens C167 derivaat gelijk is aan de originele Infineon C167CS-32FM.
Al die devices hebben een zogenaamde STEP parameter (chip revisie) achter de type aanduiding op de package staan.
De ene STEP kan voor Siemens zijn een andere STEP voor Infineon en een andere STEP voor andere customer. En mogelijk dat de STEP van invloed is hoe een device dat is uitgerust met Flash memory moeten worden geprogrammeerd.
rew
four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Die gok "F betekent flash aan boord" wordt daarmee versterkt: De enige met flash is de 16-FM.
En daar staat 128k Flash terwijl iemand anders voor de 32-FM 256k flash had gevonden. Volgens mij begint het plaatje op z'n plek te vallen.
Onderstaand een link naar een pdf van een fabrikant met producten waarin C167 derivaten zijn verwerkt.
In de pdf wordt uitgelegd hoe en met welke hardware en benodigde software tools de Flash memories van de verschillende derivaten moeten worden geprogrammeerd. De STEP parameter is van invloed welke software tool nodig is om het Flash memory te kunnen programmeren.
De Siemens en Infineon SAK C167CS-32FM komen in de onderstaande pdf meermaals voor.
Raytheon Anschutz - Updating software in micro−processors with internal Flash memory
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Op woensdag 4 maart 2026 12:49:09 schreef Bobosje:
Raytheon Anschutz - Updating software in micro−processors with internal Flash memory
Dat is een hele interessante!
Er zijn nogal wat versies, je hebt ook nog de SAB-, SAF- versies.
Siemens/Infineon = zelfde pot nat?
Misschien ook nog wel een aantal OEM of licenties afgegeven zijn voor derden?
[Bericht gewijzigd door henri62 op (50%)]
maartenbakker
Golden Member
www.elba-elektro.nl | "The mind is a funny thing. Sometimes it needs a good whack on the side of the head to jar things loose."
Infineon is de latere naam van de halfgeleidertak van Siemens.
Siemens bouwde de processoren op basis van een licentie van Intel die waarschijnlijk alleen betrekking heeft op de architectuur en instructieset, waar ze dan zelf uitbreidingen op aanbrachten.
henri62
1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
Dat was alleen van de 80286 en dat soort derivaten.
De chip maskers van de 80286 waren exact hetzelfde als die van Intel (er zaten de zelfde bugs in, uit eigen ervaring ontdekt). Zelfde als AMD ook zelfde maskers zelfde bugs.
Alleen Harris had een eigen 80(C)286 die echt anders was.
maartenbakker
Golden Member
www.elba-elektro.nl | "The mind is a funny thing. Sometimes it needs a good whack on the side of the head to jar things loose."
Omdat ik denk dat de cores niet identiek hoeven te zijn aan die van intel, noem ik de instructieset en architectuur als onderdelen die in licentie genomen zijn. Daar ben ik gezien o.a. copyrightmeldingen op oudere types eigenlijk wel zeker van. De overeenkomst tussen Siemens en intel was een stuk breder dan alleen de iAPX86 reeks (waaronder ook de types vóór de 80286).
Siemens heeft véél embedded spul op basis van de intel MCS51 (en mogelijk nog een paar reeksen) uitgebracht. Ik heb dit type automatisch als nazaat bestempeld, maar het kan wat ingewikkelder liggen.
Als ik naar plaatjes van dit specifieke model zoek, zie ik copyrights van Bosch en Siemens. Bosch wijst meestal op automobiel gebruik. Intel zal mogelijk ontbreken omdat de licentieovereenkomst afgelopen was en Siemens zelf er verder op doorgeborduurd heeft.
EDIT: het lijkt erop dat dit juist een van de eerste intel-loze architecturen is. Samen met ST ontwikkeld als 16-bits opvolger van de intel-gebaseerde reeksen. Volgens wikipedia zou er ook Russische licentieproductie van een aantal types zijn, verder verwacht ik een beetje dat Siemens en ST het in eigen handen gehouden hebben.