Un co-procesador es un procesador extra al principal que ayuda en cálculos específicos, puede ser de tipo flotante o vectorial...
Un procesador multinúcleo contiene dos o más unidades llamadas nucleos(cores), cada una contiensus propias unidades aritmético-lógicas, caché, registros, etc, pero todos los núcleos se interconectan por una misma interface.
Eso era y es lo que hacen los procesadores con tecnología Hyper-Threading: simulan tener dos núcleos(llamados núcleos lógicos o virtuales) por cada núcleo físico, y efectivamente, se basan en la ejecución de múltiples hilos(threads) de manera simultanea, pero lo que hacen es colocarlos de manera paralela en las unidades de ejecución de un nucleo.
Creo que estás confundido. El primer procesador en emular dos nucleos por cada nucleo físico fue el Xeon derivado del P4, tecnología conocida como HT, tiempo después esa tecnología se incorporó en el P4, y posteriormente en los Pentium D Extreme Edition. Esta tecnología no resulto ser muy efectiva, por lo que al crearse la arquitectura Core, se desechó(al menos temporalmente), por lo que los Core Duo, Core 2 Duo, y Pentium Dual Core(ojo, no confundir con los Pentium D, que eran procesadores basados en la arquitectura NetBurst, o sea, la misma de los Pentium 4 y algunos Celeron), pero se retomó en los Core i7, i5, i3 y en algunos modelos de Atom. Si tienes dudas, muéstranos tu fuente para aclarar...