Изображение, к которому вы привязали, а также код, который вы написали, не для множителя 4x4 (4x4 имеет два 4-битных входа, в то время как это имеет два 2-битных входа), но я предполагаю, что это часть большая система. Если это не так, то в этом исследовании немного говорится об архитектуре множителя 4x4: https://www.researchgate.net/publication/321382885_A_Novel_Heterogeneous_Approximate_Multiplier_for_Low_Power_and_High_Performance/figures?lo=1
Мне кажется, что изображение, которое вы предоставили, также хочет, чтобы вы поместили q0, q1 и mk как выходы также. Поэтому убедитесь, что вы создали еще 3 выходных порта, которые управляются этими входами. Кроме того, ваша полная логика сумматора c правильная, а код, который вы написали, соответствует изображению, которое вы предоставили. Что касается симуляции, сначала вам нужно написать тестовый стенд. Вот хороший урок для него: https://allaboutfpga.com/vhdl-testbench-tutorial/
И, наконец, вам нужно будет запустить этот тестовый стенд. Это будет зависеть от того, какой комплект моделирования вы используете (Vivado, ModelSim и т. Д. c.), Но в большинстве из них вы просто устанавливаете код в качестве верхнего уровня, а затем нажимаете кнопку запуска.
Надеюсь, что это помогло.