Le 27/07/2009 10:57, Briancon Tanguy a écrit :remy wrote:cela permet d'avoir des fonctions mathématiques câblées à pas cher et
rapide rotation de matrice décodage vidéo ,etc
Tu peux définir une rotation de matrice?
Calcul matriciel je connais
matrice de rotation aussi
rotation de matrice par contre je vois pas...(transposition ok)
A = |1 2 3|
|4 5 6|
transposée:
|1 4|
A'= |2 5|
|3 6|
On peut imaginer des rotations de 90, 180, 270°:
|3 6|
A(90) = |2 5|
|1 4|
A(180) = |6 5 4|
|3 2 1|
|4 1|
A(270) = |5 2|
|6 3|
Et même de 45° (avec remplissage par des 0):
|3 0|
A(45) = |2 6|
|1 5|
|0 4|
On trouve, p.ex., de telles rotations dans certains programmes d'échecs,
afin d'accélérer le calcul des coups.
Le 27/07/2009 10:57, Briancon Tanguy a écrit :
remy wrote:
cela permet d'avoir des fonctions mathématiques câblées à pas cher et
rapide rotation de matrice décodage vidéo ,etc
Tu peux définir une rotation de matrice?
Calcul matriciel je connais
matrice de rotation aussi
rotation de matrice par contre je vois pas...(transposition ok)
A = |1 2 3|
|4 5 6|
transposée:
|1 4|
A'= |2 5|
|3 6|
On peut imaginer des rotations de 90, 180, 270°:
|3 6|
A(90) = |2 5|
|1 4|
A(180) = |6 5 4|
|3 2 1|
|4 1|
A(270) = |5 2|
|6 3|
Et même de 45° (avec remplissage par des 0):
|3 0|
A(45) = |2 6|
|1 5|
|0 4|
On trouve, p.ex., de telles rotations dans certains programmes d'échecs,
afin d'accélérer le calcul des coups.
Le 27/07/2009 10:57, Briancon Tanguy a écrit :remy wrote:cela permet d'avoir des fonctions mathématiques câblées à pas cher et
rapide rotation de matrice décodage vidéo ,etc
Tu peux définir une rotation de matrice?
Calcul matriciel je connais
matrice de rotation aussi
rotation de matrice par contre je vois pas...(transposition ok)
A = |1 2 3|
|4 5 6|
transposée:
|1 4|
A'= |2 5|
|3 6|
On peut imaginer des rotations de 90, 180, 270°:
|3 6|
A(90) = |2 5|
|1 4|
A(180) = |6 5 4|
|3 2 1|
|4 1|
A(270) = |5 2|
|6 3|
Et même de 45° (avec remplissage par des 0):
|3 0|
A(45) = |2 6|
|1 5|
|0 4|
On trouve, p.ex., de telles rotations dans certains programmes d'échecs,
afin d'accélérer le calcul des coups.
Briancon Tanguy a écrit :remy wrote:cela permet d'avoir des fonctions mathématiques câblées à pas cher et
rapide rotation de matrice décodage vidéo ,etc
Tu peux définir une rotation de matrice?
oops une multiplication
Calcul matriciel je connais
matrice de rotation aussi
rotation de matrice par contre je vois pas...(transposition ok)<troll on>
c'est typiquement le genre de techno qui évoluera près des lieux de
production et en dehors des facs
</troll off>
remy
Utiliser verilog les chercheurs français le font déja (via esterel par
exemple).
heu je crois bien que le V de vhdl vient de verilog :-)
et le vhdl est maintenant appris au niveau bts /iut
et même en province c'est dire
par contre au niveau industrie et donc production
il me semble bien que cela se passe du côté de l'asie
Briancon Tanguy a écrit :
remy wrote:
cela permet d'avoir des fonctions mathématiques câblées à pas cher et
rapide rotation de matrice décodage vidéo ,etc
Tu peux définir une rotation de matrice?
oops une multiplication
Calcul matriciel je connais
matrice de rotation aussi
rotation de matrice par contre je vois pas...(transposition ok)
<troll on>
c'est typiquement le genre de techno qui évoluera près des lieux de
production et en dehors des facs
</troll off>
remy
Utiliser verilog les chercheurs français le font déja (via esterel par
exemple).
heu je crois bien que le V de vhdl vient de verilog :-)
et le vhdl est maintenant appris au niveau bts /iut
et même en province c'est dire
par contre au niveau industrie et donc production
il me semble bien que cela se passe du côté de l'asie
Briancon Tanguy a écrit :remy wrote:cela permet d'avoir des fonctions mathématiques câblées à pas cher et
rapide rotation de matrice décodage vidéo ,etc
Tu peux définir une rotation de matrice?
oops une multiplication
Calcul matriciel je connais
matrice de rotation aussi
rotation de matrice par contre je vois pas...(transposition ok)<troll on>
c'est typiquement le genre de techno qui évoluera près des lieux de
production et en dehors des facs
</troll off>
remy
Utiliser verilog les chercheurs français le font déja (via esterel par
exemple).
heu je crois bien que le V de vhdl vient de verilog :-)
et le vhdl est maintenant appris au niveau bts /iut
et même en province c'est dire
par contre au niveau industrie et donc production
il me semble bien que cela se passe du côté de l'asie
remy wrote:Briancon Tanguy a écrit :remy wrote:cela permet d'avoir des fonctions mathématiques câblées à pas cher et
rapide rotation de matrice décodage vidéo ,etc
Tu peux définir une rotation de matrice?
oops une multiplication
okCalcul matriciel je connais
matrice de rotation aussi
rotation de matrice par contre je vois pas...(transposition ok)<troll on>
c'est typiquement le genre de techno qui évoluera près des lieux de
production et en dehors des facs
</troll off>
remy
Utiliser verilog les chercheurs français le font déja (via esterel par
exemple).
heu je crois bien que le V de vhdl vient de verilog :-)
C'est sans doute le même type de language
et le vhdl est maintenant appris au niveau bts /iut
et même en province c'est dire
Le rapport avec la choucroute?par contre au niveau industrie et donc production
il me semble bien que cela se passe du côté de l'asie
La sémantique du c ou du vhdl est certes parfaitement définie
par contre il est facile de faire des programmes avec des bugs dans ces
deux languages... Les chercheurs français produisent des languages
de plus au nivaux
qui compilent en vhdl ou en c.
Le tout avec des preuves mathématiques pour assurer que le programme
est sans bugs...
remy wrote:
Briancon Tanguy a écrit :
remy wrote:
cela permet d'avoir des fonctions mathématiques câblées à pas cher et
rapide rotation de matrice décodage vidéo ,etc
Tu peux définir une rotation de matrice?
oops une multiplication
ok
Calcul matriciel je connais
matrice de rotation aussi
rotation de matrice par contre je vois pas...(transposition ok)
<troll on>
c'est typiquement le genre de techno qui évoluera près des lieux de
production et en dehors des facs
</troll off>
remy
Utiliser verilog les chercheurs français le font déja (via esterel par
exemple).
heu je crois bien que le V de vhdl vient de verilog :-)
C'est sans doute le même type de language
et le vhdl est maintenant appris au niveau bts /iut
et même en province c'est dire
Le rapport avec la choucroute?
par contre au niveau industrie et donc production
il me semble bien que cela se passe du côté de l'asie
La sémantique du c ou du vhdl est certes parfaitement définie
par contre il est facile de faire des programmes avec des bugs dans ces
deux languages... Les chercheurs français produisent des languages
de plus au nivaux
qui compilent en vhdl ou en c.
Le tout avec des preuves mathématiques pour assurer que le programme
est sans bugs...
remy wrote:Briancon Tanguy a écrit :remy wrote:cela permet d'avoir des fonctions mathématiques câblées à pas cher et
rapide rotation de matrice décodage vidéo ,etc
Tu peux définir une rotation de matrice?
oops une multiplication
okCalcul matriciel je connais
matrice de rotation aussi
rotation de matrice par contre je vois pas...(transposition ok)<troll on>
c'est typiquement le genre de techno qui évoluera près des lieux de
production et en dehors des facs
</troll off>
remy
Utiliser verilog les chercheurs français le font déja (via esterel par
exemple).
heu je crois bien que le V de vhdl vient de verilog :-)
C'est sans doute le même type de language
et le vhdl est maintenant appris au niveau bts /iut
et même en province c'est dire
Le rapport avec la choucroute?par contre au niveau industrie et donc production
il me semble bien que cela se passe du côté de l'asie
La sémantique du c ou du vhdl est certes parfaitement définie
par contre il est facile de faire des programmes avec des bugs dans ces
deux languages... Les chercheurs français produisent des languages
de plus au nivaux
qui compilent en vhdl ou en c.
Le tout avec des preuves mathématiques pour assurer que le programme
est sans bugs...
en gros les fpga regroupent une technologie qui permet de créer via
un langage du hard
donc tu décris ton alu unité arithmétique et logique tes registres
8,16,32, 256 bits et tous tes périfs que tu veux port usb , série ou
entrée sortie en général se sont des arm7 donc sans mmu fait pour un
micro clinux
dit différemment tu te retrouves fondeur de puce grâce à un
compilateur et un langage de description
en gros les fpga regroupent une technologie qui permet de créer via
un langage du hard
donc tu décris ton alu unité arithmétique et logique tes registres
8,16,32, 256 bits et tous tes périfs que tu veux port usb , série ou
entrée sortie en général se sont des arm7 donc sans mmu fait pour un
micro clinux
dit différemment tu te retrouves fondeur de puce grâce à un
compilateur et un langage de description
en gros les fpga regroupent une technologie qui permet de créer via
un langage du hard
donc tu décris ton alu unité arithmétique et logique tes registres
8,16,32, 256 bits et tous tes périfs que tu veux port usb , série ou
entrée sortie en général se sont des arm7 donc sans mmu fait pour un
micro clinux
dit différemment tu te retrouves fondeur de puce grâce à un
compilateur et un langage de description
remy ;> a écrit :en gros les fpga regroupent une technologie qui permet de créer via
un langage du hard
donc tu décris ton alu unité arithmétique et logique tes registres
8,16,32, 256 bits et tous tes périfs que tu veux port usb , série ou
entrée sortie en général se sont des arm7 donc sans mmu fait pour un
micro clinux
dit différemment tu te retrouves fondeur de puce grâce à un
compilateur et un langage de description
Fondeur... c'est un grand mot : un FPGA est une puce déjà fondue,
c'est-à-dire implémentant un certain nombre de portes logiques
(quelques dizaines de milliers avec un câblage assez complexe autour).
Quand on « brûle » un FPGA, on se contente de câbler correctement les
portes à partir de la synthèse logique issue de la programmation de
haut niveau (verilog ou VHDL).
De fait, la partie placement-routage est très mal optimisée puisqu'on
n'optimise que le routage (et encore) d'où des performances médiocres
au final, tant du point de vue intégration (nombre de portes logiques
disponibles) que performance (consommation électrique, vitesse).
Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun cas
concurrencer un « vrai » circuit intégré.
remy <remy@fctpas.fr;> a écrit :
en gros les fpga regroupent une technologie qui permet de créer via
un langage du hard
donc tu décris ton alu unité arithmétique et logique tes registres
8,16,32, 256 bits et tous tes périfs que tu veux port usb , série ou
entrée sortie en général se sont des arm7 donc sans mmu fait pour un
micro clinux
dit différemment tu te retrouves fondeur de puce grâce à un
compilateur et un langage de description
Fondeur... c'est un grand mot : un FPGA est une puce déjà fondue,
c'est-à-dire implémentant un certain nombre de portes logiques
(quelques dizaines de milliers avec un câblage assez complexe autour).
Quand on « brûle » un FPGA, on se contente de câbler correctement les
portes à partir de la synthèse logique issue de la programmation de
haut niveau (verilog ou VHDL).
De fait, la partie placement-routage est très mal optimisée puisqu'on
n'optimise que le routage (et encore) d'où des performances médiocres
au final, tant du point de vue intégration (nombre de portes logiques
disponibles) que performance (consommation électrique, vitesse).
Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun cas
concurrencer un « vrai » circuit intégré.
remy ;> a écrit :en gros les fpga regroupent une technologie qui permet de créer via
un langage du hard
donc tu décris ton alu unité arithmétique et logique tes registres
8,16,32, 256 bits et tous tes périfs que tu veux port usb , série ou
entrée sortie en général se sont des arm7 donc sans mmu fait pour un
micro clinux
dit différemment tu te retrouves fondeur de puce grâce à un
compilateur et un langage de description
Fondeur... c'est un grand mot : un FPGA est une puce déjà fondue,
c'est-à-dire implémentant un certain nombre de portes logiques
(quelques dizaines de milliers avec un câblage assez complexe autour).
Quand on « brûle » un FPGA, on se contente de câbler correctement les
portes à partir de la synthèse logique issue de la programmation de
haut niveau (verilog ou VHDL).
De fait, la partie placement-routage est très mal optimisée puisqu'on
n'optimise que le routage (et encore) d'où des performances médiocres
au final, tant du point de vue intégration (nombre de portes logiques
disponibles) que performance (consommation électrique, vitesse).
Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun cas
concurrencer un « vrai » circuit intégré.
Le 27-07-2009, ? propos de Re: Linux est une poubelle !,
Patrice Karatchentzeff ?crivait dans fr.comp.os.linux.debats :
Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun
cas concurrencer un « vrai » circuit intégré.
Ça dépend... J'ai commis un 6809E dans un FPGA qui tournait à
40 MHz sur bus ;-)
Le 27-07-2009, ? propos de Re: Linux est une poubelle !,
Patrice Karatchentzeff ?crivait dans fr.comp.os.linux.debats :
Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun
cas concurrencer un « vrai » circuit intégré.
Ça dépend... J'ai commis un 6809E dans un FPGA qui tournait à
40 MHz sur bus ;-)
Le 27-07-2009, ? propos de Re: Linux est une poubelle !,
Patrice Karatchentzeff ?crivait dans fr.comp.os.linux.debats :
Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun
cas concurrencer un « vrai » circuit intégré.
Ça dépend... J'ai commis un 6809E dans un FPGA qui tournait à
40 MHz sur bus ;-)
remy ;> a écrit :
Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun cas
concurrencer un « vrai » circuit intégré.
PK
remy <remy@fctpas.fr;> a écrit :
Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun cas
concurrencer un « vrai » circuit intégré.
PK
remy ;> a écrit :
Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun cas
concurrencer un « vrai » circuit intégré.
PK
JKB a écrit :Le 27-07-2009, ? propos de Re: Linux est une poubelle !,
Patrice Karatchentzeff ?crivait dans fr.comp.os.linux.debats :
[...]Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun
cas concurrencer un « vrai » circuit intégré.
Ça dépend... J'ai commis un 6809E dans un FPGA qui tournait à
40 MHz sur bus ;-)
T'en aurais fait tourner un à 400 MHz avec un CI :-)
JKB <knatschke@koenigsberg.fr> a écrit :
Le 27-07-2009, ? propos de Re: Linux est une poubelle !,
Patrice Karatchentzeff ?crivait dans fr.comp.os.linux.debats :
[...]
Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun
cas concurrencer un « vrai » circuit intégré.
Ça dépend... J'ai commis un 6809E dans un FPGA qui tournait à
40 MHz sur bus ;-)
T'en aurais fait tourner un à 400 MHz avec un CI :-)
JKB a écrit :Le 27-07-2009, ? propos de Re: Linux est une poubelle !,
Patrice Karatchentzeff ?crivait dans fr.comp.os.linux.debats :
[...]Sauf pour des petits trucs ou du prototypage, ça ne peut en aucun
cas concurrencer un « vrai » circuit intégré.
Ça dépend... J'ai commis un 6809E dans un FPGA qui tournait à
40 MHz sur bus ;-)
T'en aurais fait tourner un à 400 MHz avec un CI :-)
ce truc me titille et d'après ce que je viens de lire
cela s'apparente à de l'ada le langage que l'on a tous fait à
l'école le truc hyper typé où l'on ne peut pas additionner
un réel et un entier
par contre je ne comprends pas très bien comment cela fonctionne
chaque opération a son propre cablage ?
ce truc me titille et d'après ce que je viens de lire
cela s'apparente à de l'ada le langage que l'on a tous fait à
l'école le truc hyper typé où l'on ne peut pas additionner
un réel et un entier
par contre je ne comprends pas très bien comment cela fonctionne
chaque opération a son propre cablage ?
ce truc me titille et d'après ce que je viens de lire
cela s'apparente à de l'ada le langage que l'on a tous fait à
l'école le truc hyper typé où l'on ne peut pas additionner
un réel et un entier
par contre je ne comprends pas très bien comment cela fonctionne
chaque opération a son propre cablage ?
remy ;> a écrit :ce truc me titille et d'après ce que je viens de lire
cela s'apparente à de l'ada le langage que l'on a tous fait à
l'école le truc hyper typé où l'on ne peut pas additionner
un réel et un entier
oui = VHDL (ou Verilog) = ADA (enfin, une adaptation). L'adaptation
est que l'on est censé faire de la microélectronique (je dis bien
censer, je connaissais beaucoup de pisseur de code qui n'avaient pas
compris qu'à l'arrivée, c'était cela).par contre je ne comprends pas très bien comment cela fonctionne
chaque opération a son propre cablage ?
Non. C'est du booléen. Un matheux anglais, Boole, a montré qu'il est
toujours possible de réduire un automate d'états finis en suite
d'instructions simples (AND, OR, NOT, XOR (en fait, on peut même le
réduire à la fonction logique NAND)).
À la suite du code, on le fait passer dans un synthétiseur, qui
transforme ton code HDL en fonctions logiques : c'est là qu'est toute
l'intelligence du truc, pour optimiser certaines fonctions en fonction
justement des bibliothèques du fondeur.
C'est là aussi la limite du truc : un synthétiseur ne sait pas tout
faire. Donc, le codeur doit éviter de taper un code de trop haut
niveau et bien penser qu'il manipule des bouts de circuits. Très peu
le font et laissent la merde à ceux qui suivent (synthèse et surtout
sur le placement-routage).
PK
remy <remy@fctpas.fr;> a écrit :
ce truc me titille et d'après ce que je viens de lire
cela s'apparente à de l'ada le langage que l'on a tous fait à
l'école le truc hyper typé où l'on ne peut pas additionner
un réel et un entier
oui = VHDL (ou Verilog) = ADA (enfin, une adaptation). L'adaptation
est que l'on est censé faire de la microélectronique (je dis bien
censer, je connaissais beaucoup de pisseur de code qui n'avaient pas
compris qu'à l'arrivée, c'était cela).
par contre je ne comprends pas très bien comment cela fonctionne
chaque opération a son propre cablage ?
Non. C'est du booléen. Un matheux anglais, Boole, a montré qu'il est
toujours possible de réduire un automate d'états finis en suite
d'instructions simples (AND, OR, NOT, XOR (en fait, on peut même le
réduire à la fonction logique NAND)).
À la suite du code, on le fait passer dans un synthétiseur, qui
transforme ton code HDL en fonctions logiques : c'est là qu'est toute
l'intelligence du truc, pour optimiser certaines fonctions en fonction
justement des bibliothèques du fondeur.
C'est là aussi la limite du truc : un synthétiseur ne sait pas tout
faire. Donc, le codeur doit éviter de taper un code de trop haut
niveau et bien penser qu'il manipule des bouts de circuits. Très peu
le font et laissent la merde à ceux qui suivent (synthèse et surtout
sur le placement-routage).
PK
remy ;> a écrit :ce truc me titille et d'après ce que je viens de lire
cela s'apparente à de l'ada le langage que l'on a tous fait à
l'école le truc hyper typé où l'on ne peut pas additionner
un réel et un entier
oui = VHDL (ou Verilog) = ADA (enfin, une adaptation). L'adaptation
est que l'on est censé faire de la microélectronique (je dis bien
censer, je connaissais beaucoup de pisseur de code qui n'avaient pas
compris qu'à l'arrivée, c'était cela).par contre je ne comprends pas très bien comment cela fonctionne
chaque opération a son propre cablage ?
Non. C'est du booléen. Un matheux anglais, Boole, a montré qu'il est
toujours possible de réduire un automate d'états finis en suite
d'instructions simples (AND, OR, NOT, XOR (en fait, on peut même le
réduire à la fonction logique NAND)).
À la suite du code, on le fait passer dans un synthétiseur, qui
transforme ton code HDL en fonctions logiques : c'est là qu'est toute
l'intelligence du truc, pour optimiser certaines fonctions en fonction
justement des bibliothèques du fondeur.
C'est là aussi la limite du truc : un synthétiseur ne sait pas tout
faire. Donc, le codeur doit éviter de taper un code de trop haut
niveau et bien penser qu'il manipule des bouts de circuits. Très peu
le font et laissent la merde à ceux qui suivent (synthèse et surtout
sur le placement-routage).
PK