Diferença entre o Bloco de RAM e memória RAM Distribuído em FPGA

R

richardyue

Guest
Qual é a diferença entre o bloco de RAM e RAM distribuídos em FPGA? I'v ler algumas notas de aplicação, mas ainda estou confued sobre estes dois carneiros.
 
Em FPGAs Xilinx, a RAM é uma memória Bloco duas portas dedicada contendo vários kilobits de memória RAM. O FPGA contém várias (ou muitas) destes blocos. Dentro de cada bloco lógico de pequeno porte é uma tabela de pesquisa configurável. É normalmente utilizado para funções lógicas, mas você pode reconfigurá-lo como alguns pedaços de RAM. Você pode combinar várias (ou muitas) delas em uma grande RAM. Esta é distribuído RAM. Ambos os tipos de RAM pode ser inicializado com os dados, ou usados ​​como ROM.
 
A RAM é distribuída dentro da LUT, eo Bloco de RAM está fora da LUT. Estou certo?
 
Outra pergunta: Vamos dizer que se eu quiser projetar um somador utilizando FPGA, nós armazenamos o código de execução no FPGA, especificamente na LUT. Estou certo? Se eu estiver certo, então como pode FPGA manter o código de execução? Porque eu acho que é uma LUT RAM, é volátil. Quando é desligado, ele não pode armazenar o código de execução mais. Talvez não seja o exemplo mais adequado, mas eu acho que pode me fazer entender como funciona FPGA. Espero que alguém possa me ajudar. Obrigado antecipadamente.
 
Correto! A configuração do FPGA é armazenado na memória RAM, então quando você power-baixo, o seu desenho desaparece. Próxima vez que você ligar, você deve recarregar a configuração de memória não-volátil, como flash. A maioria dos FPGAs oferecem várias maneiras de fazer isso. Se você estiver usando uma FPGA Xilinx, consulte a "Configuração" capítulo da folha de dados.
 
O memeory não-volátil pode ser localizado no FPGA ou fora do FPGA? Eu acho que é como uma arquitetura de computadores. O computador armazena o código da placa-mãe e carrega o código na RAM CPU da placa-mãe quando é ligado. Estou certo?
 
Você deve fornecer uma memória não-volátil externo (geralmente um dispositivo flash ROM), ou algum outro meio para configurar o FPGA depois de o ligar. Para mais detalhes, ver que "Configuration" capítulo. Quando uma placa-mãe de computador poderes para cima, a CPU executa o código de inicialização do BIOS armazenado em um chip ROM flash. Lê o código de inicialização do sistema operacional do disco rígido na memória RAM principal, e depois a CPU executa-lo de lá. Carregando uma configuração em um FPGA é um processo seqüencial. É muito diferente de um CPU executar o código de ROM.
 
Mas ambos carregar o seu código excution de uma memória não-volátil na memória RAM após ligá-lo. Estou certo? Eu não entendo a sua última declaração. Gostaria de dizer a diferença entre eles com mais detalhes? Obrigado por dedicar tempo para me ajudar com minha pergunta.
 
A CPU não arrancar através da transferência de código de ROM para a RAM. A CPU executa o código diretamente do ROM por buscar uma instrução de cada vez, e fazendo o que quer que o ensino exige. (Vamos ignorar CPUs que fornecem cache de instruções.) Quando um FPGA poderes-up, todas as suas tecido lógica interna é alheio, de modo que o FPGA não é funcional. Você conecta o tecido de acordo com sua lógica de design, definindo milhões de controle de pequenos interruptores ON ou OFF. Cada interruptor de controle habilita ou desabilita um pequeno recurso no tecido lógica. Os interruptores de controle são organizados como um registrador de deslocamento gigante. Você "configure" o FPGA, deslocando o seu bitstream de configuração por muito tempo no registrador de deslocamento (que geralmente leva menos de um segundo). Em seguida, esses milhões de interruptores de controle ativadas simultaneamente, e que o tecido lógica FPGA torna-se seu design. Você está familiarizado com o funcionamento de um PAL / PLD? Um FPGA é um pouco semelhante, mas em vez de ter permanente elos fusíveis, um FPGA tem aqueles interruptores de controle.
 
Na verdade, eu não estou familiarizado com a forma como um PAL / PLD trabalha em um sistema. Quando um PAL / PLD poderes up, não é buscar instrustions da ROM fora? Estou totalmente confuso sobre como esses dispositivos de lógica de trabalho agora. Gostaria de recomendar alguns livros para mim?
 
PAL e PLA é a lógica de matriz programável que consistem e e ou matrizes que podem ser programados para uma determinada aplicação. como eles estão em níveis lógica particular depois de ter sido programada (alta ou lo) dão os mesmos valores de cada u lê-los.
 
Oi, echo47, Gostaria de responder a algumas perguntas básicas do VHDL FPGA e desenho para mim no futuro próximo? Eu preciso de alguns especialistas para me ajudar com os problemas de aprendizagem quando o FPGA design ou afins. Às vezes, talvez algumas perguntas são muito bobo, espero que você possa me ajudar com paciência. :)
 
FPGA se tornam mais e mais complicado, especialmente para aplicação avançada, devido à architecure muito especial de FPGA. Mesmo engenheiro sênior FPGA necessidade de suporte técnico da Altera ou Xilinx em nossa empresa, por isso eu não acho que aprender por si mesmo é o tempo-econômico.
 
oi, em uma matriz simétrica FPGA (eg.Xilinx) bloco RAMs são dedicados elementos presentes dentro FPGA. geralmente eles correm paralelas dentro FPGA. a sua possível ter uma única porta, bem como duas portas bloco RAMs. Na porta dupla bloco RAMs ambas as portas operam a velocidades de clock diferentes. RAMs distribuídas são implementadas dentro LUTs. cada CLB dentro de um FPGA Xilinx contém duas fatias e cada fatia contém 2 LUTs e LUTs são amde de SRAM, que podem acomodar 16 bits. assim, para a memória que você usa pequenos distribuídos RAMs e para grande uso de memória RAM Bloco
 
Oi, archillios, conselhos Graças para você. Mas, você sabe, eu quero encontrar uma posição no campo FPGA e agora eu não tenho nenhuma experiência de trabalho. Então eu tenho que aprender por mim mesma.
 
Agradecemos a sua discussão é muito útil eu tenho pergunta como eu posso gravar alguns dados no bloco de ram? Eu quero armazenar alguns dados em FPGA e quando executar fpga dados use i am iniciante em vhdl e qual é a deferência entre constante e matriz em FPGA?
 

Welcome to EDABoard.com

Sponsor

Back
Top