When a new process starts operating system initializes MMU's registers with process' page table. While virtual address translation MMU gets a virtual address, passes it to comparators and gets physical address (please correct me if I'm mistaken). So, if page table is part of hardware, how a single MMU can work with 32 and 64 bit operating systems. I mean if it's programmed to get 32 bit virtual address, how it works when it gets 64 bit virtual address.
Thanks.