A partir de là:
http://www.eccpage.com/rs.c
Vous pouvez pré-compute alpha_to, index_of et gg
Pour le cas dans le programme exemple qui est 16 + 16 + 7 ints (ont-ils besoin être ou ne fonctionnera pas octets?) ou 156 octets
Cet exemple a 9 ints de données et 6 ints de ecc ou 15 total, si ce sont des ints de 4 octets qui est un autre 60 octets, 216 au total.
Ou 54 octets si cela pouvait être fait avec des octets seulement. J'ai l'impression de me souvenir que ça marche avec des octets. La routine de codeur elle-même a un modulo mais vous pouvez probablement le remplacer par un et en fonction de vos longueurs. Si votre processeur embarqué a une division, cela ne vous fera probablement pas de mal de toute façon. Sinon, la routine de l'encodeur est assez simple. Je pense que vous pouvez approcher 500 octets avec les tables, les données et le code.
Je ne me souviens pas comment obtenir des 9 données et 6 ecc de l'exemple aux 10 et 5 que vous recherchez. Espérons que le code dans le lien ci-dessus vous donnera une longueur d'avance à ce que vous recherchez.
Salut. Merci pour l'entrée, cela semble être une solution possible. Précomputing les tables, car il y a plus qu'assez de flash disponible. Oui, cela fonctionne avec des octets. En fait, le codage RS fonctionne avec n'importe quelle taille alpahabet. –
L'exemple que vous fournissez est probablement l'exemple le plus compliqué et le plus alambiqué du codage de Reed-Solomon sur le net. –