Nouvelles:

Le Forum est maintenant chiffré (préambule https). Bien sûr, des liens externes insérés dans les sujets vont demeurer inchangés. Mais la composition des pages du Forum est désormais sécurisée. Si des problèmes d'affichage surviennent, veillez à vider votre cache pour ce site.

Menu principal

Attention nostalgie : mon ordinateur en 1977.

Démarré par Pautex, Août 13, 2022, 09:03:55 PM

« précédent - suivant »

Pautex

En 1977 les microprocesseurs arrivent et ne sont pas inabordables, de mon coté je dispose de divers circuits intégrés plutôt facile à  trouver à  cette époque, les prix sont dérisoires alors uk est temps de commencer le montage d"un ordinateur. Le chassis est vite trouvé il sera équipé d'un fond avec des connecteurs, les cartes seront des circuits imprimés pour s'interconnecter via le chassis.
Des circuits imprimés oui mais en fait un seul modèle avec des variantes réalisé spécialement et qui permet de souder les circuits intégrés et d'avoir une zone de soudure pour les fils d'interconnexions

Les photos disponibles sont anciennes début des photos numériques (1986) et bien sûr impossible de les refaire, je ne dispose plus de cette machine, elle était complète en juillet 1977
avec le processeur 1Mhz 2650, 1K de RAM (oui bon) un clavier ASCII de récupération et un téléviseur pour écran et une table traçante XY analogique.
A à  cette époque c'était plutôt facile de trouver le matériel, les circuits intégrés disponibles par sac de 100 pièces à  trier avant utilisation, pratiquement que des portes, les diodes par 1000
oui ca fait beaucoup j'avais de grands projets pour ces diodes vous verrez plus tard.

Voici un aperçu d'ensemble de cette machine :

Pautex

C"est un gros chassis avec beaucoup de boutons des clefs 16 sur une rangée et quelques boutons de commandes, en gros on à  un mode 'run' et un mode attente remplissage de la mémoire, une rangée de LED indique l'état du bit. avec les clefs on donne une adresse en mémoire, on valide et hop on incrémente une par une les adresses pour lire la data correspondante en mémoire, oui c'est du vrai DMA, le processeur n'intervient pas, on peut bien sûr lire ou écrire en mémoire directement pour entrer un code assembleur à  executer.

C'est la base, remplir la mémoire et corriger les fautes si besoin, ça consomme un énorme stock de circuits, penser qu'il faut placer des anti-rebond absolument partout, sur chaque bouton, au lecteur de retrouver comment faire un anti-rebond, et des compteurs prépositionables en pagaille.

Les alimentations en 5V environs 10A et +15V, -15V rien de particulier, un gros transfo fait l'affaire

Pautex

La première carte présentée est la carte du processeur un 2650 de 'Signetic' simple et très abordable avec une bonne documentation, à  cette époque, ce processeur semble plus puissant que le 8080 et n'est pas multiplexé ce sera plus simple pour obtenir le bus data 8 bits et le bus adresse (16 bits) qui seront distribués vers le fond du chassis pour les autres cartes.

L'horloge 1Mz est facile à  obtenir, avec un quartz pas de soucis avec le câblage même si les fils sont fortement regroupés, la distribution pas vraiment très courte.
Le quartz est sur une autre carte et le signal est distribué dans le câblage du fond de panier.
Ce processeur est plutôt simple sans multiplexage, sera donc distribué les lignes de commande, une carte annexe accédera au bus adresse sur 16 bits, au bus data 8 bits et à  divers ligne de commande écriture, lecture, en somme pas compliqué. Il faut toutefois amplifier les divers bus vis à  vis du processeur c'est le rôle de toute la circuiterie autour du processeur, la carte mémoire est sur une plaque séparée pour être accessible également par les commandes manuelles du chassis de base.

La règle : le processeur commande 1 porte TTL, 1 porte TTL en commande 10, donc oui le fond de panier est amplifié mais que par des portes TTL, c'est largement suffisant, on ne vise pas trop la vitesse non plus. A cette époque la technique TTL était plutôt largement disponible. Ca complique juste un peu pour les signaux bidirectionnels à  part le bus data c'est pas trop courant.

Pautex

#3
Le câblage est réalisé avec du fil à  wrapper, soudé sur les plots de chaque coté des circuits intégrés, les alimentations des CI sont déjà  cablés, la technique TTL présente la masse et le +5V toujours à  la même place, on visualise bien si c'est câblé, les tests sont facile, la mise en place de plusieurs fils sur la même broche est aussi possible.

On va considérer et utiliser la plaquette de circuit comme une plaque à  trous classique mais beaucoup plus pratique, le câblage est plus stable, on rajoute les circuits au fil des besoins pour couvrir les besoins de la fonction, alors ne demandez pas trop de détails avec les schémas. Ils ne sont pas complet d'avance et évoluent rapidement avec les essais. Comme il n'est pas envisagé de reproduire la machine le seul objectif est que la fonction marche pas qu'elle soit optimisée. Le nombre de circuits à  placer dans une fonction est sans importance, les CI sont presque tous soudés, si une porte de marche pas on décale le câblage il est trop compliqué de déposer un circuit sur ce genre de carte.

A vette époque 1976-1977 pas d'internet, pas d'ordinateur au moins pour le public et donc les schémas resteront des griffonnages sur des carnets histoire de retrouver le cablage des connecteurs mais en effet ça reste plutôt approximatif. Si internet n'est pas de la partie, il reste que la documentation est plutôt abondante et bien disponible, en effet les constructeurs et fournisseurs de CI nous abreuvent largement avec les ouvrages documentaires sur la production et ça souvent gratuitement sur simple demande, merci Motorola, Philips, Signetic etc... et comme une série de CI par exemple la série TTL (74xxx) est standardisé en performance et câblage on retrouve facilement n'importe quel circuit. Ces ouvrages étaient aussi une mine inépuisable de schémas divers pour implémenter une fonction.

La carte suivante est la mémoire 8 bits et 1K réalisé avec 8 circuits 1 bit. C'est de la mémoire statique donc pas besoin de rafraichissement qui complique sérieusement l'affaire, et en fait toute la machine est statique, le processeur 2650 est absolument statique, la vitesse d'horloge est sans importance, le pas à  pas est vraiment possible.


Pautex

#4
La carte mémoire, ce n'est pas la plus compliquée, globalement simple à  réaliser, elle se positionne sur le bus data via des drivers tri-state, un décodage d'adresse lui donne accès au bus dans la gamme [0x0000...0x03FF] elle est utilisable par le processeur et par le panneau de commande en face avant, lire un résultat d'un (futur) calcul par affichage  sur les LED en façade n'est pas exclus.

Le circuit est le même que celui de la carte du processeur avec une petite rallonge pour les 8 CI de la RAM.
Les circuits imprimés ne me posent aucun problème de réalisation, ils sont réalisés sur un calque végétal  avec du ruban papier adhésif de divers largeur puis transféré sur des plaquettes photo-sensible, pas vraiment d'autre solution à  cette époque, c'est après1988 avec l'arrivée des lasers et du dessin sur ordinateur que j'ai abandonné les rubans mais j'ai conservé le papier calque pendant plus de 30 ans, l'exposition de la plaquette est souvent réalisée dans un châssis cadre directement au soleil, même avec des nuages ça marche, sinon un châssis presse avec lampes UV est souvent récupérable.

La carte la plus délicate et difficile de cette machine est la carte écran TV comme moniteur, c'est la découverte d'un circuit générateur de caractères qui déclenche l'affaire, en fait ce circuit se révèle n'être qu'une ROM améliorée avec les caractères ASCII, il faut un maximum de circuits autour pour obtenir un véritable signal TV.
Un téléviseur NB bien sûr, est facile à  transformer pour faire une entrée vidéo mais n'accepte pas trop que le signal vidéo dérive trop de sa norme donc 625 lignes entrelacées et 64 microsecondes la durée de la ligne, rapidement le nombre de caractères sur la ligne sera fixé à  32 pour environ 16 lignes de texte, on va presque atteindre la limite maximum en fréquence du générateur de caractères.



Pautex

#5
Le générateur de caractère le circuit blanc sur la droite, alimenté en 5V, il me semble bien qu'il avait aussi besoin de -12V.
Ok il réalise une sortie 7x8 points d'un caractère mais sans plus, pour intégrer ça dans un signal TV standard il faut beaucoup de circuits compteur, la carte ne dispose pas d'horloge elle utilise la distribution du signal 1Mhz.

Globalement le principe est simple, on dispose d'une mémoire 8 bits accessible par le processeur qui va remplir les codes ASCII à  afficher sur des adresses précises, la mémoire est également lisible pour le générateur de caractères la commutation du bus adresse est assurée par les multiplexeurs la rangée de circuits 24 broches. de mémoire ce sont des 74150, ok c'est pas super optimal mais bon les multiplexeurs sont disponibles largement. Il faut d'un autre coté générer le signal de base numériquement pour la synchro TV 625 lignes.
On va aussi générer le signal le signal utile par lecture de la mémoire régulièrement et obtenir par l'intermédiaire du générateur de caractère le point representatif pour affichage, si le processeur à  besoin d'écrire en mémoire il dispose d'une priorité mais l'action est rapide et ne perturbe pas vraiment l'affichage, bon j'ai pas testé vraiment car on est loin de faire tourner un jeu la dessus, les jeux n'étaient même pas au programme des ordinateur de cette époque, c'est arrivé rapidement tout de même.
Le mixage des signaux de synchro et signal ligne n'as pas été si simple il a fallut ajouter une petite plaquette par dessus (LOL)

Un autre carte est nécessaire la carte des entrées sorties divers, la liaison avec les périphériques.


Pautex

#6
Cette carte est importante car elle donne l'horloge 1Mhz de base pour toutes les autres cartes et possiblement des sous variantes en fréquence. On dispose également d'un convertisseur numérique analogique 10 bits je pense pour une éventuelle table traçante ou un oscilloscope, l'entrée clavier aussi, le clavier est une entrée parallèle 7 bits avec signal 'strobe' qui provoque certainement une interruption.

Ca commence à  faire beaucoup de circuits, des périphériques mais question logiciel pour relier tout ce monde rien ! Le processeur est statique et dispose même d'un mode arrêt ou repos ce que les processeurs actuels peuvent rêver pour des vacances. Donc si dans la mémoire on place du code machine à  partir de l'adresse zéro, ce code est exécuté après passage en mode "run" ) la fin tout repasse en attente.
Il faut raisonner directement en code machine, sans un autre ordinateur pas de compilation possible, le remplissage de la mémoire est effectué avec les clefs du panneau avant octet par octet, c'est plutôt pénible si le code est long bon on ne dépassera pas 1000 octets ca va ! Le code machine du 2650 est toutefois simple, il est facile de tester les divers périphériques ou générer une petite forme d'onde sur l"oscilloscope attention pas de multiplication seulement des opérations simples.

Il est pénible de repasser rapidement du code vers la mémoire et c'est à  ce moment qu'intervient la carte ROM avec du code fixe a lancer en plaçant au début juste une instruction 'jump' vers le code à  exécuter en ROM, oui mais à  cette époque je ne dispose pas encore de ROM classique alors c'est décidé, il faut une carte dédié à  cet usage.
Une carte ROM à  diode est sur les rails, elle comportera 4096 emplacements de diodes, une diode = 1 pas de diode = 0 c'est simple sur le principe, bon un grand circuit est préparé il comportera un emplacement pour une série de diodes j"avais juste oublié qu'il faut faire pas loin de 5000 trous sur cette carte !

Pautex

#7
Donc on prépare 64 lignes verticales et 64 lignes horizontales soit 4096 emplacements, à  chaque croisement est percé un trou, entre deux lignes sur la partie composants et sur la ligne horizontale en dessous. On place une diode pour faire 1 sinon le bit est zéro. C'est organisé en octets à  lire verticalement par colonnes de 64 octets. Des circuits de sélection sont répartis sur le coté, ils sont chargés de décoder l'adresse envoyé par le processeur, sélectionner une ligne horizontale et un groupe de 8 bits verticalement, le résultat est un octet à  disposition du processeur, c'est rapide largement adapté à  la vitesse du processeur, merci la possibilité d'avoir des diodes par sachet de 1000. Les circuits 24 broches sur la droite sont des décodeurs 4 vers 16 des 74154 facilement disponibles.

Sur cette carte tout est statique même pas besoin d'horloge, le programme implémenté fait dans une boucle la lecture du clavier pour le repasser directement sur l'affichage TV bon attention on est assez loin du traitement de texte ! pas de roll du texte tout juste un effacement global et un programme fixe très difficile à  modifier aussi ! Et le traitement de texte à  l'écran n"est pas encore inventé à  cette époque, faudra pas attendre très longtemps toutefois pour voir le remplacement des cartes perforées par des écrans de saisie. La micro informatique avance très vite, la baisse du prix de la mémoire est en marche. C'était sur cette machine le point faible et le plus coûteux.

A cette époque juin 1977 Apple annonce la production de l'Apple][ rapidement les performances de ce dernier ruinent toute tentative pour poursuivre sur cette machine, je manque d'expérience sur la façon d'organiser le logiciel nécessaire, question matériel la machine est innovante pour minimiser les CI par exemple parfois l'usage seul de l'adresse suffit souvent pour avoir une action, le data bus n'est même pas sollicité, certains circuits sont des PAL, des réseaux logiques de portes, pour les avoir utilisés par la suite ces circuits sont un vrai bonheur.


F4IZB

#8
C'est vraiment magnifique, ça donne envie de mettre les mains dedans..!
J'ose à  peine imaginer le temps, la patience, les connaissances, et surtout la volonté requises pour arriver à  ça..
Vraiment content que tu aies partagé ces images et ces lignes, c'est un régal !

Et c'est vraiment une période de l'informatique que je regrette de n'avoir pas connu, car ce sont les fondements des technologies d'aujourd'hui...


Bravo à  toi en tout cas !

francoisp31

whao superbe machine  :)   c'est trop cool d'avoir gardé ça