Interfacing HD44780 to FPGA using Finite State Machine
In this project LCD interfacing is based on using delay elements with Finite State Machine (FSM). Programming logic devices are different from microprocessors, because of its different structure. To achieve step-by-step program execution there is a FSM used which allows implementing series of commands (actually waveforms) with desired delays that can be sent to LCD.
As Edvin NC Mui says - generating signals would require huge amount of logic elements on FPGA, so it is better to construct a Finite State Machine that would act as microcontroller and send necessary signals to communicate HD44780 LCD. His experiment was based on Spartan-II XCS200-5 FPGA and FSM layout was synthesized by using Xilink ISE 8.1i VHDL Compiler. He achieved that device occupies 87 FPGA slices out of 2352 and his FSM can operate at speed of 108.98MHz. Full document to read And Xilink FPGA project files.
[...] As Edvin NC Mui says - generating signals would require huge amount of logic elements on FPGA, so it is better to construct a Finite State Machine that would act as microcontroller and send necessary signals to communicate HD44780 LCD. His experiment was based on Spartan-II XCS200-5 FPGA and FSM layout was synthesized by using Xilink ISE 8.1i VHDL Compiler. He achieved that device occupies 87 FPGA slices out of 2352 and his FSM can operate at speed of 108.98MHz. Full document to read And Xilink FPGA project files. [via] [...]