-- << put processes inside the architecture section >> -- (you can have multiple processes in an architecture, but beware of multiple drivers!) -- (you can mix processes and signal assignments in any order within the arch.) process(prs, rst) -- "listen" for changes of the prs and rst inputs (key pressed, reset) -- note that you can have other processes that also listen to these -- the process will execute only when there is a change on one(or more) -- of the lines. All signal assignments done in a process stay at that -- value until the processes changes them. begin if rst = '1' then -- stuff to do if reset is asserted (put your reset code here) else -- stuff to do normally if prs'event and prs = '1' then -- this is called a "clock edge selection", -- you'll learn about that later. -- It just says that when prs CHANGES TO A 1, then -- do this stuff. (ie WHEN line gets raised, do this -- stuff once) -- stuff to do when a key is pressed (put main code here) end if; end if; end process;