What is an instruction bus?
I believe you have one bus too many. Taking the image from teach-ict.com:



The diagram shows two buses with memory and one internal bus. One memory bus fetches instructions (stored in memory) to the Control Unit and data (stored in the same memory) to the ALU. The second bus is the Address Bus which says which memory to read or write (both for instructinos and data).

The Control Unit decodes the instruction and tells the ALU what to do (add, subtract, divide...). The Control Unit and the ALU together are called the CPU.

There is no separate Control Bus with the memory. The Control "Bus" is internal in the CPU.



In the Harvard Architecture there is physically separate memory for instructions and data. It means there are 4 buses, 2 data buses (1 for instructions and 1 for data) and two address buses (1 to address the instruction memory and 1 to address the data memory). The "Control Unit" in the diagram is the combined Control Unit and ALU from the previous diagram, the CPU. Any Conrol "Bus" is internal to that unit.

To summarize the answer: a Control Bus is internal to the CPU and should not be considered in discussing interactions with memory. There is no Control Bus with memory.

(Note: The Input and Output shown in the Von Neumann diagram should be ignored, or should be considered also present in the Harvard Architecture.)