I'm somewhat confused on the nature of computer engineering. I'd like to know if it's worth my time to learn something. I want to be able to design a piece of digital hardware (this would be what I would need to learn, if it's worth it.) that I can program my own purpose in C or assembly. Although I don't know what all would be entailed, is there such a service that I would be able to send in my design, and they would be able to return a chip? Or, could I construct it somehow using homebrew techniques or from smaller submodules? I just want to know how much I'd advance myself by learning computer engineering things. I have a compen book I bought with intent on taking the next compen class, but from skimming lightly it appears to be just programming in assembly. Is this book worth my time, or should I get another one? The book is: Computer Organization and Design by Patterson and Hennessy. 4rd Ed. Note: I have an EE background, so things like discrete circuits, analog SP, DSP, E&M, and communications I'm all familiar with.