Embedding processors in Field Programmable Gate Arrays (FPGA)
You can embed a microcontroller or a microprocessor into an FPGA chip. This has several advantages. The primary advantage is that you can create the exact system that you are looking for. Say you need 5 UART interfaces and 15 General Purpose I/O (GPIO), well than that is what you designing and build for yourself, no compromising. Its a complete custom solution. Read about my adventure building a simple embedded 6502 computer system.
OpenCores is a website that hosts a lot of free FPGA code. You can find many processor cores there from legacy 8-bit 6502 implementations, used in a lot of old video games and early personal computers, to the OpenRISC 1200 which is a modern 32 processor with a complete GCC toolchain for code development.
Digilent sells a lot of different FPGA development boards. They have educational pricing if you are a student. The Digilent boards typically have a nice selection of I/O devices built right onto the board. Things such as LEDs, switches, buttons, seven segment displays, VGA output, HDMI output, etc. This is handy if you are building various circuits and may not know what you need or need different I/O from project to project. Adafruit is another company which sells lots of hobby type electronics. They carry a couple of FPGA boards. Their FPGA boards are more spartan, but also cheaper. If you already know what you want to build, they may be the way to go.