soulless escribió:Sera el CPU Core el unico que se comunicara con la ram???
Nop, casi todos los demás componentes también trabajan directamente sobre la RAM.
yosoy_bostero escribió:no veo para que la clase bus, son simplemente registros de 32bits.. ya hay atributos (tanto busdir como busdatos) en la clase memoria y en el procesador, en todo caso sera la clase "placa madre" " main " o como sea que la llamemos, la que se ocupara de "linkear (vincular)" dichos atributos, leer de uno escribir en el otro y viceversa.
Lo que había pensado es eliminar la clase "placa base" y hacer que los componentes tengan punteros a los otros componentes que necesiten tocar. Por ejemplo cAllegrex tendría un puntero a cMemoria. De esta forma accede directamente, y sobre todo, no tiene que esperar a placa base. Usar "buses" a través de "placa base" es un follón, sobre todo si hay buses comunes (como el de la memoria principal). Si tenéis alguna idea de cómo "arbitrar" el bus, soy todo oídos. De todas formas me parece algo superfluo y que sólo va ralentizar el conjunto.
~Rdavid~ escribió:¿Por qué es necesario eliminar los 4 pasos con los que funciona el CPU? ¿no sería mejor hacerlo justo como lo hace el procesador para no tener problemas después?
No digo eliminarlos, digo fusionarlos. Mi idea era la siguiente:
Clase placa base:
- cAllegrex ejecuta siguiente estado
- Validar cMemoria
Repitiendo estos pasos de forma infinita.
El problema radica a la hora de ejecutar instrucciones, ya que algunas instrucciones realizan más accesos a memoria, mientras que otras a lo mejor no realizan ninguno. Por tanto, no podrían recuperar los datos que necesitan dichas instrucciones a menos que se insertaran más estados a cAllegrex, algo que no me parecía coherente.
Si se elimina el uso de buses, cAllegrex puede acceder cuando quiere a cMemoria.