AFAIK to create the next block, there must be a specific structure (specific number of leading zeros) in the has output calculated on the block's header. This header contains a set of fixed parts (merkle tree, previous block's hash, ...) and two variable parts: nonce and timestamp.
Now, what if all combinations of timestamp and nonce do not result in the desired output to validate the block? (At least for a long duration, like a week).